Во первых они могли хотя бы элегантно выйти, без краша.
Во-вторых, если все-таки заморачиваться и фиксить это: код атрибутов можно окружить #ifdef'ами специфичными к компиляторам. Это один вариант решения проблемы.
Второй вариант решения: вынести подобные функции в отдельный объектный файл, и компилировать именно этот файл с оптимизациями. А в рантайме уже, во время запуска, в зависимости от наличия/отсутствия поддержки, расставить указатели на соотв. функции.
Я извиняюсь, вы что, домашнюю директорию в /usr/ примонтировали?? Я только что измерил свою систему, исключая /home: у меня Archlinux с тремя DE, кучей софта для разработки, и еще разного хлама, которым я не пользуюсь. Я не побоюсь заявить, что у меня одна из самых захламленных GNU/Linux систем. И занимает это все жалкие 22GB.
весь /usr целиком перенести на HDD с созданием символьной ссылки Linux не позволяет
Чем вам поможет символьная ссылка, если /usr должна монтироваться на старте? Добавьте в fstab запись, что /usr находится на другом разделе.
ВКонтакте, Hangouts, Skype, IRC :) Раньше еще facebook был, но последнее время плагин выдает ошибку 401. Я не заморачивался, т.к. редко там общаюсь, как, в принципе, и по скайпу. Просто все это дело занимает лишь 66МБ RAM, почему бы и не держать включенным.
Ах, слушайте, странная вещь: я сейчас понял, что хотя почему-то я не могу звонить в Echo/Sound Test Service, но я могу звонить другому контакту, соданному мной пару дней назад для теста.
Проше прощения, значит все-таки звонки работают, просто как-то… странно.
Но это же дефолтный UA хромиума. И нет, это не работает — при заходе на web.skype.com, звонок, например, в Echo/Sound Test Service показан серым, с всплывающей подписью «You can't make calls to…».
Я бы рекомендовал это зарепортить в техподдержку Viber. К слову, у меня на Archlinux он в бэкграунде с год висел (последние два месяца только нету, потому что я путешествую, и вообще с др. ноутом), и подобных проблем никогда не наблюдал.
> P.S.: Через браузер же можно пользоваться, вроде запилили.
Они даже не смогли пофиксить тривиальность с ssse3 — если вы ожидаете что они сделали нормально работающие звонки по всем платформам, вы их переоцениваете. Там нужно загружать какой-то плагин, уведомление с которым вроде как должно всплывать, но при этом плагин привязан к платформе, и под GNU/Linux его, насколько мне известно, нет.
Желаемые вами подробности описаны в пределах хабраката, который размером всего 3 предложения. Заголовок я старался сделать минимальным, чтобы с краткого взгляда стало ясно, заинтересует статья или нет — и если да, то прочесть кат, где события неплохо подсуммированы.
Это касается всех пользователей Skype, включая Windows и Linux, потому что Windows может оказаться следующей под ударом. Заметьте: разработчики так и не прокомментировали, почему это произошло.
Удалять строки по шаблону нередко приходилось при отладке. Например, очень изощрялся при разборе, почему изменение в GLSL компиляторе привело к поломке интерполяции под моей видеокартой (r600g драйвер). Мне приходилось сравнивать ассемблерный вывод до- и после-, и всячески его модифицировать, ибо разные оффсеты и адреса не совпадали, и GVimDiff показывал все в красном, тогда как настоящих изменений там было немного, хотя и были раскиданы по вертексному и пиксельному шейдеру. Это далеко не единственный пример, просто последнее что я помню.
Вы знаете, я даже немного затрудняюсь ответить. Во-первых, даже когда я в режиме исследования незнакомого кода, т.е. сам код не изменяю — я стараюсь делать в отдельном файле пометки о найденных мелочах, странностях, возможном рефакторинге. Во-вторых, это подводит к вопросу о преимуществах Vim при чистой навигации, без редактирования. Здесь надо подумать.
В принципе, если оставить чистую навигацию, предположить что вы вообще не редактируете код — это сразу отбрасывает большинство преимуществ навигации в пределах видимого экрана. И хотя тут Vim тоже крут, но мне кажется большинство этих вещей поддерживаются в IDE тоже. Например я гуглю «перейти к открывающей/закрывающей фигурной/квадратной/круглой скобке» (к примеру посмотреть начало цикла) по IntellijIdea, и я вижу что такой шорткат там имеется. Мне много разных хоткеев идет в голову, но (я правда не проверял) вероятно они есть в той или иной форме и в IntellijIdea.
Я думаю, это сводит все к аргументу, упомянутому мной в пред. комментарии — при использовании Vim вам не нужно под каждый язык программирования искать новую IDE с новым интерфейсом, новыми… э-э-э… особенностями, и перенастраивать шорткаты, опасаясь что именно в этой IDE не окажется чего-то вам важного.
Я использую режим вима в Емакс. Возможно вверху уже ответили, я довольно бегло пролистал комменты. Отвечу тем не менее на конкретные аргументы статьи:
для того, чтобы сместиться на два-три слова вправо, — переходить в какие-то режимы и обратно, да еще и считать это киллер-фичей вима, — увольте.
Я согласен. Я использую вместо этого C-f и C-b. Совсем не обязательно выходить из режима вставки. Я так работаю даже в оригинальном Vim (который я юзаю для мелких правок, а прямо сейчас для набора этого коммента).
Если вы ненавидите мышь, то для навигации по коду есть свои горячие клавиши: можно без мыши перейти к нужному классу, файлу, методу, номеру строки и т.д.
Это окончание абзаца, где вы удивлялись, зачем строить велосипеды, если в IDE можно так же настроить хоткеи.
Отвечу тем же: для чего мне под каждый язык программирования настраивать новые хоткеи в новой IDE с новым интерфейсом, опасаясь что именно в этой IDE не окажется возможности что-нибудь забайндить — если есть проверенный редактор, где все отлично работает, и мне лишь надо пару плагинов для навигации и автодополнения?
Перейти к следующему/предыдущему абзацу
Да, это было бы полезно иметь в IDE. Но в основном при редактировании статей для хабра, а не для кода.
Вообще, когда код не напоминает решето из пустых строк, я довольно неслабо абузю это и в коде. В любом случае, есть еще, например, «перейти к концу/началу текущей функции» (у меня на [m и ]m забайндено соотв.).
Перейти до пробела.
Ну, можно считать полезной штукой, но не слишком крутой. Несколько раз нажать ctrl-стрелочка будет иметь тот же эффект.
Уточню: до любого след. или предыдущего символа. Перейти к открывающей скобке, чтобы изменить аргументы; перейти к запятой, чтобы изменить слово перед ней… Вы не представляете, сколько времени суммарно это экономит на работе с кодом.
перейти на полстраницы вниз/вверх.
Не знаю, надо ли это мне, пока не решил.
Перемещение на первую/последнюю/среднюю строку экрана.
Не знаю, зачем это нужно. Ну то есть, может пригодиться, но не киллер-фича.
Обе вещи полезны при навигации. Например вы переместились к функции, и изучаете что она делает. Одно C-d, и вы чуть сместились. Насчет «первой/последней/средней строки» — я часто для того же юзаю. Например держу курсор в центре, и двигаю экран то к нижней строке, то к верхней… Это немного трудно объяснить, но это не бесполезный хоткей. Кроме того, нередко при редактировании, какой-то код, что надо изменить, оказывается практически в центри, или внизу, или вверху… Скажем так, я могу по статистике работы сказать, что те комбинации не бесполезны.
Можно удалить ровно X строк кода.
Каждый день так делаю. Вот ровно 19 строк кода надо удалить порою.
Я рад, что вы тоже нашли Hybrid Line Numbers. Очень полезно.
В целом, то что вы встретили называется Blub Paradox. Я рекомендую попользоваться редактором хотя бы месяц (только нормально, а не «две минуты в нем, три часа в IDE), и вы поймете насколько он все упрощает.
Во-вторых, если все-таки заморачиваться и фиксить это: код атрибутов можно окружить #ifdef'ами специфичными к компиляторам. Это один вариант решения проблемы.
Второй вариант решения: вынести подобные функции в отдельный объектный файл, и компилировать именно этот файл с оптимизациями. А в рантайме уже, во время запуска, в зависимости от наличия/отсутствия поддержки, расставить указатели на соотв. функции.
Я извиняюсь, вы что, домашнюю директорию в /usr/ примонтировали?? Я только что измерил свою систему, исключая /home: у меня Archlinux с тремя DE, кучей софта для разработки, и еще разного хлама, которым я не пользуюсь. Я не побоюсь заявить, что у меня одна из самых захламленных GNU/Linux систем. И занимает это все жалкие 22GB.
Чем вам поможет символьная ссылка, если /usr должна монтироваться на старте? Добавьте в fstab запись, что /usr находится на другом разделе.
Есть плагин к pidgin skypeweb. Он у меня постоянно в бэкграунде висит. Но на данный момент там работает только чат — звонков нет.
Проше прощения, значит все-таки звонки работают, просто как-то… странно.
Это тонкая отсылка к пред. статье на гиктаймс, где Столлман жаловался, мол не доверяет он «новой добренькой Майкрософт».
Я бы рекомендовал это зарепортить в техподдержку Viber. К слову, у меня на Archlinux он в бэкграунде с год висел (последние два месяца только нету, потому что я путешествую, и вообще с др. ноутом), и подобных проблем никогда не наблюдал.
Они даже не смогли пофиксить тривиальность с ssse3 — если вы ожидаете что они сделали нормально работающие звонки по всем платформам, вы их переоцениваете. Там нужно загружать какой-то плагин, уведомление с которым вроде как должно всплывать, но при этом плагин привязан к платформе, и под GNU/Linux его, насколько мне известно, нет.
Удалять строки по шаблону нередко приходилось при отладке. Например, очень изощрялся при разборе, почему изменение в GLSL компиляторе привело к поломке интерполяции под моей видеокартой (r600g драйвер). Мне приходилось сравнивать ассемблерный вывод до- и после-, и всячески его модифицировать, ибо разные оффсеты и адреса не совпадали, и GVimDiff показывал все в красном, тогда как настоящих изменений там было немного, хотя и были раскиданы по вертексному и пиксельному шейдеру. Это далеко не единственный пример, просто последнее что я помню.
Вы знаете, я даже немного затрудняюсь ответить. Во-первых, даже когда я в режиме исследования незнакомого кода, т.е. сам код не изменяю — я стараюсь делать в отдельном файле пометки о найденных мелочах, странностях, возможном рефакторинге. Во-вторых, это подводит к вопросу о преимуществах Vim при чистой навигации, без редактирования. Здесь надо подумать.
В принципе, если оставить чистую навигацию, предположить что вы вообще не редактируете код — это сразу отбрасывает большинство преимуществ навигации в пределах видимого экрана. И хотя тут Vim тоже крут, но мне кажется большинство этих вещей поддерживаются в IDE тоже. Например я гуглю «перейти к открывающей/закрывающей фигурной/квадратной/круглой скобке» (к примеру посмотреть начало цикла) по IntellijIdea, и я вижу что такой шорткат там имеется. Мне много разных хоткеев идет в голову, но (я правда не проверял) вероятно они есть в той или иной форме и в IntellijIdea.
Я думаю, это сводит все к аргументу, упомянутому мной в пред. комментарии — при использовании Vim вам не нужно под каждый язык программирования искать новую IDE с новым интерфейсом, новыми… э-э-э… особенностями, и перенастраивать шорткаты, опасаясь что именно в этой IDE не окажется чего-то вам важного.
Я использую режим вима в Емакс. Возможно вверху уже ответили, я довольно бегло пролистал комменты. Отвечу тем не менее на конкретные аргументы статьи:
Я согласен. Я использую вместо этого C-f и C-b. Совсем не обязательно выходить из режима вставки. Я так работаю даже в оригинальном Vim (который я юзаю для мелких правок, а прямо сейчас для набора этого коммента).
Это окончание абзаца, где вы удивлялись, зачем строить велосипеды, если в IDE можно так же настроить хоткеи.
Отвечу тем же: для чего мне под каждый язык программирования настраивать новые хоткеи в новой IDE с новым интерфейсом, опасаясь что именно в этой IDE не окажется возможности что-нибудь забайндить — если есть проверенный редактор, где все отлично работает, и мне лишь надо пару плагинов для навигации и автодополнения?
Вообще, когда код не напоминает решето из пустых строк, я довольно неслабо абузю это и в коде. В любом случае, есть еще, например, «перейти к концу/началу текущей функции» (у меня на
[m
и]m
забайндено соотв.).Уточню: до любого след. или предыдущего символа. Перейти к открывающей скобке, чтобы изменить аргументы; перейти к запятой, чтобы изменить слово перед ней… Вы не представляете, сколько времени суммарно это экономит на работе с кодом.
Обе вещи полезны при навигации. Например вы переместились к функции, и изучаете что она делает. Одно
C-d
, и вы чуть сместились. Насчет «первой/последней/средней строки» — я часто для того же юзаю. Например держу курсор в центре, и двигаю экран то к нижней строке, то к верхней… Это немного трудно объяснить, но это не бесполезный хоткей. Кроме того, нередко при редактировании, какой-то код, что надо изменить, оказывается практически в центри, или внизу, или вверху… Скажем так, я могу по статистике работы сказать, что те комбинации не бесполезны.Я рад, что вы тоже нашли Hybrid Line Numbers. Очень полезно.
В целом, то что вы встретили называется Blub Paradox. Я рекомендую попользоваться редактором хотя бы месяц (только нормально, а не «две минуты в нем, три часа в IDE), и вы поймете насколько он все упрощает.