Найти - Пользователи
Полная версия: Самая лучшая IDE для Python для линукса(Gnome)
Начало » Инструментальные средства разработки » Самая лучшая IDE для Python для линукса(Gnome)
1 2 3 4 5 6 7
ilya1
jjay
@ilya1:
Почти везде кнопочки в хидере + меню. Wings и SConstruct - вкладки.
Понятно, что это уже не эклипс/нетбинс, но придраться все равно есть к чему.
Можно проще.
Кнопочки, а точнее панели инструментов, можно убрать (в Wing и SlickEdit (SConstruct - это имя файла :) )), но меня и так устраивает,- размер моего монитора позволяет (ваш монитор, похоже, тоже не 14 дюймов). А вот на мой вопрос про русскую раскладку и горячие клавиши vim'ерам, видимо, сказать нечего, я прав?

Итого: придирки - чистый маразм (не смог сдержаться, извини).
Zubchick
Что за ШГ в емаксе?)
jjay
ilya1
А вот на мой вопрос про русскую раскладку и горячие клавиши vim'ерам, видимо, сказать нечего, я прав?
Помогает.
set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯЭХЪ;ABCDEFGHIJKLMNOPQRSTUVWXYZ\"{},фисвуапршолдьтщзйкыегмцчняхъ;abcdefghijklmnopqrstuvwxyz[]
Cleric
Как это не прискорбно, нормально решить вопрос с русской раскладной в виме, не представляется возможным (есть несколько костылей, в т.ч. упомянутый jjay но они не полноценны) Однако из вима можно сделать очень даже годный редактор кода, с замашками на IDE (неплохой автокомплит и навигация по коду с помощью rope, есть так же отличный плагин pyflackes подсвечивающий ошибки на лету). Но не более (например годного кросплатформенного плагина для дебага я так и не нашёл). Чем я и пользуюсь (кому интересно мой vimrc ) Всё конечно глубокое ИМХО.
ilya1
jjay
Помогает.
set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯЭХЪ;ABCDEFGHIJKLMNOPQRSTUVWXYZ\"{},фисвуапршолдьтщзйкыегмцчняхъ;abcdefghijklmnopqrstuvwxyz[]
Не работает, но уже есть прогресс. Вот такой .vimrc на Ctrl-Ы (=Ctrl-S в русской раскладке) вместо сохранения удаляет всю строку до начала строки (большего эффекта достичь не смог):
set langmap=ы;S
noremap <C-S> :update<CR>
Помогайте, эта эпическая нелюбовь вима к русскому меня достала.

Zubchick
Что за ШГ в емаксе?)
Дефолтные, в убунте. Я не сильно им пользусь; так, периодически запускаю поэкспериментировать.
ZZZ
А причём тут “Ctrl-S” и vim? Не ищите аналоги. Ищите способы сделать требуемое.
Не делайте из вима блокнот. В виме надо набрать :w и если вы не способны к этому привыкнуть – значит vim-style не для вас.
jjay
ilya1
Не работает, но уже есть прогресс. Вот такой .vimrc на Ctrl-Ы (=Ctrl-S в русской раскладке) вместо сохранения удаляет всю строку до начала строки (большего эффекта достичь не смог):
Код:

set langmap=ы;S
noremap <C-S> :update<CR>
Помогайте, эта эпическая нелюбовь вима к русскому меня достала.
1. set langmap=ы;s (учитывай регистр)
2. langmap распространяется на vmode и nmode.

У меня работает так (<C-s> вообще в gterm отказывается работать):
set langmap=a;f
noremap <C-f> :update<CR>
imap <C-f> <esc>:update<CR>a
Что бы работало в imode можно написать что-то подобное в ~/.vim/plugins/langmap.fix
" set characters you want to fix in insert mode
let g:langmap_fix_chars = "qwertyuop[]asdfghjkl;'zxcvbnm,./"

function! DoLangMapFix()

" get current langmap
redir => l:lmstr
set langmap
redir END

" create original maplist and locale maplist
let l:lmstr = substitute(l:lmstr, "\n", "","g")
let l:lmstr = substitute(lmstr, " langmap=", "", "")
let l:langsets = split(lmstr, ',')
let l:corig = []
let l:clocal = []
for langset in l:langsets
let [ l:local, l:orig ] = split(langset, ';')
for char in split(orig, '\zs')
let l:corig += [char]
endfor
for char in split(local, '\zs')
let l:clocal += [char]
endfor
endfor

" create list of current imaps
let l:index = 0
redir => l:imapss
silent imap
redir END
let l:imaps = split(l:imapss, '\n')
while index < len(l:imaps)
let l:imaps[l:index] = substitute(l:imaps[l:index], '\n', '', 'g')
let l:imaps[l:index] = substitute(l:imaps[l:index], '^i ', '', '')
let l:index += 1
endwhile
let l:index = 0

" fix locale characters
for char in l:corig

" fix only chars we want
if match(g:langmap_fix_chars, char) > -1

" check is imap for char avaible
let l:foundmap = ''
for fmap in l:imaps
if match(fmap, '^<C-' . toupper(char) . '>', '') > -1
let l:foundmap = fmap
break
endif
endfor

" won't fix
if len(l:foundmap) == 0
let l:index += 1
cont
endif

" here we are
let l:lchar = l:clocal[l:index]
let l:mapping = substitute(l:foundmap, '^<C-.>', '<C-' . l:lchar . '>', '')
let l:cmd = 'imap ' . l:mapping
silent exec l:cmd
endif
let l:index += 1
endfor
endfunction

silent call DoLangMapFix()
Теперь <C-f> ( а у тебя <C-s> ) должно работать во всех режимах/во всех раскладках.

Остается один вопрос - зачем менять раскладку с английской когда пишешь код? Оо
shiza
гики блин =)
Geany с плагинами - мое все.
ilya1
jjay
У меня работает так (<C-s> вообще в gterm отказывается работать):
set langmap=a;f
noremap <C-f> :update<CR>
imap <C-f> <esc>:update<CR>a
Что бы работало в imode можно написать что-то подобное в ~/.vim/plugins/langmap.fix
Заработало! Но только в терминальном режиме; в gvim'е не пашет (печаль).

Остается один вопрос - зачем менять раскладку с английской когда пишешь код? Оо
Дык не только код пишу, но и документацию.

ZZZ
А причём тут “Ctrl-S” и vim? Не ищите аналоги. Ищите способы сделать требуемое.
Не делайте из вима блокнот. В виме надо набрать :w и если вы не способны к этому привыкнуть – значит vim-style не для вас.
И как :w поможет решить проблему, умник? Считаем кол-во нажатий для сохранения файла (для простоты переход в модальный режим опустим):
1. Переключиться на английский
2. :
3. w
4. Enter
5. Переключиться на русский

“Всего-то” 5 действий … И эти люди запрещают мне ковырят^W пользоваться мышой (мышой, кстати, одного клика достаточно,- ну так, для счету)! :))))
ZZZ
ilya1
И как :w поможет решить проблему, умник?
Какую проблему, умник? Это всё настолько привычно и быстро, что не замечаешь, как руки сами всё делают.
Я ещё раз повторю, не делайте из вима блокнота и прочих графических ide. У него свой стиль, и либо надо привыкнуть, либо отказаться.

P.S. Думаю, что Эмаксиане сказали бы тоже самое, если бы блокнот делали из эмакса…
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB