Здравствуйте, IID, Вы писали:
IID>Здравствуйте, Roman Odaisky, Вы писали:
RO>>POSIX в продуктах Майкрософта? Смешно.
IID>Ничего смешного. Позикс-подсистема раньше вообще была встроенной частью винды,
Была? Я что-то пропустил?
IID>Win32 ничем, формально, не "роднее" винде чем POSIX.
Только окошек без Win32 не будет
Здравствуйте, DOOM, Вы писали:
DOO>Здравствуйте, IID, Вы писали:
IID>>Здравствуйте, Roman Odaisky, Вы писали:
RO>>>POSIX в продуктах Майкрософта? Смешно.
IID>>Ничего смешного. Позикс-подсистема раньше вообще была встроенной частью винды. Posix DOO>Была? Я что-то пропустил?
Была-была. Три подсистемы было изначально. Win32, Posix, OS/2. Последние две выпилены в WinXP и Win2003 (правда в редакции Windows 2003 Compute Cluster вроде Posix выпиливать не стали). В Viste высших редакций Posix вроде опять появился. Гугль в помощь.
IID>>Win32 ничем, формально, не "роднее" винде чем POSIX. DOO>Только окошек без Win32 не будет
Будет Начиная с NT4.0 оконная подсистема в ядре, а стало быть от UserMode подсистем не зависит. Рисуй сколько хочешь. Только оно недокументированное всё, на этом уровне
RO>>import os, pwd, pycurl, random, re, sha, string, subprocess, sys, tarfile, time, urllib, urlparse
RO>>
M>Кстати то ли в NetBeans то ли в PyCharm есть просто пункт меню consolidate imports Два тыка мышкой
Да и в эклипсе есть "organize imports". Один хоткей, или пару кликов. Правда, он не только сортирует, но и убирает неиспользуемые.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Мне очень нравится VIM и то как в нем построена система редактирования текста. Но отсутствие нормально поддержки автодополнений для C++ (не надо рассказывать по ctags и прочее, я сам про них могу много его рассказать) делает его не очень подходящим для больших проектов.
Хотя именно как редактор VIM великолепен
Здравствуйте, пыщьх, Вы писали:
П> Или вы где-то видели клавиатуру без home/end/page up/page down/etc.?
На моем MacBook Pro их нет. Даже через Fn. При этом клавиатура потрясающе удобная, она просто другая
Здравствуйте, kaa.python, Вы писали:
KP>Мне очень нравится VIM и то как в нем построена система редактирования текста. Но отсутствие нормально поддержки автодополнений для C++ (не надо рассказывать по ctags и прочее, я сам про них могу много его рассказать) делает его не очень подходящим для больших проектов.
Здравствуйте, kaa.python, Вы писали:
KP>Мне очень нравится VIM и то как в нем построена система редактирования текста. Но отсутствие нормально поддержки автодополнений для C++ (не надо рассказывать по ctags и прочее, я сам про них могу много его рассказать) делает его не очень подходящим для больших проектов.
Я прикручивал туда поддержку автодополнения от XRefactory. Докрутил до того, что оно начало работать, но потом бросил у ушёл обратно в Студию.
П>> Или вы где-то видели клавиатуру без home/end/page up/page down/etc.? KP>На моем MacBook Pro их нет. Даже через Fn. При этом клавиатура потрясающе удобная, она просто другая
Home = Cmd + Left
End = Cmd + Right
PgUp/PgDn = Fn + Up/Down(не везде, правда, работает, хотя и должно )
M>>Home = Cmd + Left M>>End = Cmd + Right M>>PgUp/PgDn = Fn + Up/Down(не везде, правда, работает, хотя и должно )
KP>Я бы сказал что приведенное тобой это просто некое соглашение, т.к. по моим ощущениям не все приложения реагируют на эти комбинации одинаково.
Ну, на Home/End можно сказать, что реагируют 95% за исключнием TextMate А вот PgUp/PgDn — это увы
Здравствуйте, Cyberax, Вы писали:
C>Здравствуйте, kaa.python, Вы писали:
KP>>Мне очень нравится VIM и то как в нем построена система редактирования текста. Но отсутствие нормально поддержки автодополнений для C++ (не надо рассказывать по ctags и прочее, я сам про них могу много его рассказать) делает его не очень подходящим для больших проектов. C>Я прикручивал туда поддержку автодополнения от XRefactory. Докрутил до того, что оно начало работать, но потом бросил у ушёл обратно в Студию.
Почему ушли?
XRefactory плохо работает?
Недокрутили?
Не смогли привыкнуть к vim?
C>Могу поискать код и выложить.
был бы очень признателен.
С уважением Denys Valchuk
IMHO чем больше мнений тем оптимальней выбор варианта... :)
Здравствуйте, Mamut, Вы писали:
M>Так вот мне стало интересно. О чем же именно не могут даже и мечтать другие редакторы по сравнению с vi(m)'ом? Только убедительная просьба. Если будете считать количество клавиш, то разница должна быть на порядок хотя бы, а не на одно-два нажатия
а какая разница? если объективно, то средний программист пишет настолько мало кода в день, что абсолютно пофиг сколько кнопок нажимать.
гораздо важнее навигация по коду, практика показывает, что Find Usages используется на порядке чаще чем текстовый поиск(и пофигу с регэкспами он или нет). и вот в этом разрезе было бы интересно услышать, что умеет vim в этой области.
ну и всякие "удалить текст между скобками" тоже не нужны. нужно refactor->change signature.
Здравствуйте, genre, Вы писали:
G>а какая разница? если объективно, то средний программист пишет настолько мало кода в день, что абсолютно пофиг сколько кнопок нажимать.
Не пофиг. И по этой причине большие изменения откладываются на потом. Ctrl-R-R — модифицирует хоть сто, хоть тыщу файлов. А руками так никто никогда не делал и делать не будет.
Здравствуйте, Tanker, Вы писали:
G>>а какая разница? если объективно, то средний программист пишет настолько мало кода в день, что абсолютно пофиг сколько кнопок нажимать.
T>Не пофиг. И по этой причине большие изменения откладываются на потом. Ctrl-R-R — модифицирует хоть сто, хоть тыщу файлов. А руками так никто никогда не делал и делать не будет.
Здравствуйте, andrey.desman, Вы писали:
AD>Здравствуйте, Mamut, Вы писали:
M>>Так вот мне стало интересно. О чем же именно не могут даже и мечтать другие редакторы по сравнению с vi(m)'ом? Только убедительная просьба. Если будете считать количество клавиш, то разница должна быть на порядок хотя бы, а не на одно-два нажатия
Это SnipMate? Как это сделать? Табы не прокатывают.
Или другой плагин?
Умоляю!
M>Так вот мне стало интересно. О чем же именно не могут даже и мечтать другие редакторы по сравнению с vi(m)'ом? Только убедительная просьба. Если будете считать количество клавиш, то разница должна быть на порядок хотя бы, а не на одно-два нажатия
Командный режим работы хорошо проявляет себя при редактировании текста. А как известно, исходники чаще редактируют, чем пишут с нуля. Оперируя логическими блоками ("найти следующую открывающую скобку, удалить слово, поместить в буфе первые три символа следующего слова, удалить все до закрывающей скобки, вставить помещенное в буфер") позволяет быстро записать сложный макрос и затем применять его к тексту. Как правило в таких случаях случается огромный выигрыш во времени. Задачи вида "а теперь мы по всем исходникам ищем во-о-о-о-от такую конструкцию и меняем ее вот таким образом" решается очень быстро — первый раз мы выполняем это командами (причем можно использовать даже логику — вида "если то-то то делать одно, в противном случае другое") а затем просто нажимаем кнопочку "повторить для всех вхождений" и смотрим как вим перемалывает наши десять мегабайт исходников.
В принципе, в сферическом мире в вакууме, где код идеально организован и массовые правки архитектурно не нужны, все редакторы примерно одинаковые. Но на практике это, увы, не так. И местами вим может за пять минут выполнить задачу, которую в той же вижуалке стучать по клавишам целый день, да к тому же есть риск опечататься.
M>>Так вот мне стало интересно. О чем же именно не могут даже и мечтать другие редакторы по сравнению с vi(m)'ом? Только убедительная просьба. Если будете считать количество клавиш, то разница должна быть на порядок хотя бы, а не на одно-два нажатия
EOH>Командный режим работы хорошо проявляет себя при редактировании текста. А как известно, исходники чаще редактируют, чем пишут с нуля.
Именно. Поэтому, наверное, логичнее иметь интерактивный режим по умолчанию
EOH>Оперируя логическими блоками ("найти следующую открывающую скобку, удалить слово, поместить в буфе первые три символа следующего слова, удалить все до закрывающей скобки, вставить помещенное в буфер") позволяет быстро записать сложный макрос и затем применять его к тексту.
Что такое сложный макрос? Если он сложный, это значит, что применяется он редко. Например, описанная тобой последовательность действий в виде макроса не нужна даже даром. Потому что именно такая последовательность действий слишком специфична, чтобы быть полезной.
EOH>Как правило в таких случаях случается огромный выигрыш во времени. Задачи вида "а теперь мы по всем исходникам ищем во-о-о-о-от такую конструкцию и меняем ее вот таким образом" решается очень быстро — первый раз мы выполняем это командами (причем можно использовать даже логику — вида "если то-то то делать одно, в противном случае другое") а затем просто нажимаем кнопочку "повторить для всех вхождений" и смотрим как вим перемалывает наши десять мегабайт исходников.
Описанное — это рефакторинг, который для многих языков в некоторых IDE намного умнее, чем банальная последовательность действий.
Не говоря уже о том, что «воооот такая конструкция» вряд ли будет встречаться в коде много раз.
EOH>В принципе, в сферическом мире в вакууме, где код идеально организован и массовые правки архитектурно не нужны, все редакторы примерно одинаковые. Но на практике это, увы, не так. И местами вим может за пять минут выполнить задачу, которую в той же вижуалке стучать по клавишам целый день, да к тому же есть риск опечататься.
Пока что примеры таких задач праткически никто не привел (кто привел — можно посмотреть по оценкам от меня в этом топике. Обычно они в первом уровне).
M>Пока что примеры таких задач праткически никто не привел (кто привел — можно посмотреть по оценкам от меня в этом топике. Обычно они в первом уровне).
Я рассказываю исключительно про свое впечатление за последние пять лет плотной работы с VIM. В целом я уже более десяти лет активно использую Visual Studio, много лет использовал emacs, так что есть с чем сравнивать. Продавать вам VIM я не собираюсь, так что специально вспоминать и описывать здесь ситуации сложной замены, когда VIM экономил очень много времени, не буду — достаточно того, что я этими соображениями поделился.