LINUX.ORG.RU

Один Vim с разными цветсхемами для разных задач в различных терминалах. (+ awesome)

 , , , ,


26

5

Раз уж пацаны гонят оголтелый треш в последнее время в галерее, то тут такое дело:

Не сколько скриншот рабочего стола, хоть не без этого, сколько скриншот демонстрирующий удобную настройку редактора с одним конфигом - для разных задач, с разными цветсхемами для различных терминалов. Всё работает без изменения конфига (~/.vimrc).

Этот пост-скриншот для тех, в большей степени новичков, кто не в курсе дела такой возможности настройки.

Я вообще постоянно использую 4 терминала + tmux в некоторых из них, это: urxvt, практически идеальный Terminal-0.4.8 (сейчас называется xfce4-terminal-0.6.x - но оно неюзабельное и с багами), гибко настраиваемый ROXterm и относительно новый и малоизвестный пользователям-рабам тяжелых DE - крутой и моднейший клавиатуро-ориентированный(sic!) терминал termite (вимерам юзать однозначно!).

Каждый терминал для определенной (не жестко) задачи или настроения: для руби, md/haml/coffee, для Си или Эрланга. Для манов через vimpager. Для системных конфигов. Разные цветсхемы, различные шрифты - со сглаживанием или без. С различными схемами не только вима, но и статусбара/интерфейса вима, причем в одном случае это vim-powerline, в других vim-airline в свою очередь также с разными цветами. Кайфотне.

Суть в том, что каждый раз (если использовать один терминал) включать/выключать схему терминала, вима, менять шрифт и сглаживание - жутко неудобно же. Поэтому, можно настроить Vim вот так:

if $COLORTERM == 'Terminal'
    желаемые настройки
endif

Также можно можно настроить вим менять схему и интерфейс в зависимости от дня недели и времени суток, например днём светлую, ночью тёмную:

let weekday=system('date +%u')
let hour=system('date +%H')
if hour == x
  бла бла
endif

Не каждый терминал возвращает $COLORTERM, например Terminal и urxvt - да, а все остальные из списка нет. Поэтому я запускаю их как скрипты на хоткее следующего содержания, например termite.sh:

#!/bin/bash
export COLORTERM="termite" && /usr/bin/termite --geometry=1248x620+60+40
возможно можно как-то более по умному, но и так работает, всё ок.

Ну и детали:

Gentoo GNU/Linux 3.10.5-geek
Awesome-3.4.15
тема осома: Penumbra

На скриншоте Vim 7.4 (не gvim), некоторые цветсхемы работают благодаря плугину CSApprox.

Только полный кастом или никак, пацаны!

Такие дела.

>>> Просмотр (1366x768, 487 Kb)

★★☆

Проверено: JB ()
Последнее исправление: science (всего исправлений: 3)
Ответ на: комментарий от Deleted

А вот я перезапустил i3, чтобы снять чистые данные с urxvtd…

┎ ~
┖ .20 at home $ ps -o size -C urxvtd
 SIZE
46020
┎ ~
┖ .20 at home $ ps -o rss -C urxvtd
  RSS
12828
А ещё в нём можно легко запретить жирный шрифт.

Deleted
()
Ответ на: комментарий от geekless

да, но Narrow больше похож на этот

а так еще Meslo S симпотичный, но наигравшись с хипсторскими шрифтами остановился в итоге на дежавю моно

actionless ★★★★★
()
Ответ на: комментарий от geekless

mc в roxterm'е с TerminusMedium.ttf размер 9: http://i.imgur.com/6FVPy8R.png

Если включать больше 9 - там начинается сглаживание и прочий отстой.

А вообще, я не юзаю terminus.ttf, а собираю из исходников через портаж,
ну в общем он: /usr/share/fonts/terminus/ter-*.pcf.gz здесь лежит в таком случае.

И никаких проблем в любом терминале и размере с ним нет.

science ★★☆
() автор топика
Ответ на: комментарий от Deleted

Да я не люблю жирных тулкитов, и никогда этого не скрывал.

$ pacman -Qi vte-common vte lilyterm | grep размер
Установленный размер:  14,00 KiB
Установленный размер: 1960,00 KiB
Установленный размер: 651,00 KiB

Да, два с половиной метра — это очень жирно, ты меня убедил. Не влазит на одну дискетку с MS-DOSом. Мы ведь все тут пользуемся MS-DOSом?

Или нет, ой...

$ pacman -Qi rxvt-unicode | grep размер
Установленный размер: 2846,00 KiB
urxvt-то жирнее оказался. :D

Я стараюсь поддерживать своё окружение минималистичным, если это возможно. Мне всё равно, сколько стоит 4 GB RAM на рынке, они всё равно не встанут ни в мой старый нетбук, ни в какую-нибудь херовинку на арме (да, я знаю, что сейчас можно и армятину с восемью гб заказть, но для меня это всё равно не повод, извини).

У тебя вместо нормальной рабочей станции «хреновина на арме»? И уж извини, но я не поверю, что в твоём «старом нетбуке» актуально, жрёт эмулятор терминала 30 мегабайт или 35.

Всё равно значительно больше, как видишь.

Ога-ога. 28 и 36. «Значительно больше». Аж засвопилось сразу всё :DD

Я к чему это всё. Ты посмотри, с какой чушни ты начал и продолжаешь в том же духе. «Пакет зависит от vte, знаешь, это не смешно»!!11 И это реально не смешно, когда у человека условный рефлекс на смутно знакомое сочетание букв заменяет мозги. Какая к тебе к херам разница, занимает программа 2 или же 3 мегабайта, если типичный размер современного дискового накопителя на шесть порядков больше? На шесть порядков, вашу мать! Какая тебе разница, сколько этих несчатных мегабайт рамы она сожрёт, если браузер заведомо сожрёт еще гигабайт сверху? Я думал, если тебя потроллить и довести разговор до абсурда, ты вспомнишь о более адекватных вещах. Но нет, я был наивен.

У программ есть куча характеристик: скорость работы, гибкость и удобство настройки, возможность удобного управления с мыши и с клавиатуры, уровень интеграции с другим ПО, создаваемая нагрузка на CPU (что влияет на потребление и значит, на время работы от батареи), стабильность работы, количество известных багов и так далее. Я даже не говорю, что lilyterm по этим параметрам лучше (по некоторым он заведомо хуже; кстати, по каким? тут кто-нибудь, кроме меня пытается объективно оценивать ПО, которым пользуется?). Я говорю, что ты о них даже не вспомнил. А вот подрочить на потребление ОЗУ — это да. Святое.

Я вот как разработчик смотрю на таких пользователей, и у меня руки опускаются. Зачем для вас вообще что-то писать? Зачем в паблик выкладывать сорцы и пакеты? Половина ЛОРа — школотроны с синдромом «скачать убунту бесплатно без смс», вторая половина — выжившие из ума старпёры, дрочащие на циферки в выводе htop. (То есть о чем это я, htop — это слишком жирное приложение. В free -m надо смотреть!)

Куда, млять, делись святые времена, когда срач про терминалы велся хотя бы на уровне «в этом вашем urxvt надо конфиги задрачивать» — «а в этом вашем gnome-terminal хоткеи хрен настроишь»?

Откуда вы взялись?

geekless ★★
()
Ответ на: комментарий от geekless

Да, два с половиной метра — это очень жирно, ты меня убедил.

смотрит, сколько пакет (пакет!) весит на диске

не думает о том, что в генте urxvt имеет опции сборки

Мне как-то критичней, сколько эмулятор терминала будет занимать места в оперативной памяти, особенно, когда у меня их будет много, особенно, когда они повисят недельку-другую.

У тебя вместо нормальной рабочей станции «хреновина на арме»?

Ноуп. Но я хотел бы поставить на кухню что-то простое с монитором. Так, часы показывать или плейлист переключать, пока готовлю.

И уж извини, но я не поверю

А придётся. См. выше.

Ога-ога. 28 и 36. «Значительно больше»

А ты ещё чуть выше посмотри. По твоей любимой колоночке разница получается в три раза. А давай теперь прикинем, во что превратится твой нежно любимый лилитерм, если количество открытых терминалов у меня увеличится (окей, я даже соглашусь не разбивать их на разные окна а мучиться с порядка 18-ю вкладками в одном) и они наберут в весе (допустим ровно так же, как urxvt) за 11 дней. Три на два — шесть раз плюс 16 MiB на пролистывание 9 экзепляров шелла как было в urxvt, но умноженное на два. Итого 36*2 + 2*18 = 108 MiB на одни терминалы.

И это реально не смешно, когда у человека условный рефлекс на смутно знакомое сочетание букв заменяет мозги.

Я рад что ты понял это. А теперь прочти man urxvt, а после man -P"less -p'I often'" 7 urxvt

Какая к тебе к херам разница… если типичный размер современного дискового накопителя

Мне — никакой. Я, если ты помнишь, сетовал на то, что лилитерм оперативку жрёт. Измерение размера того, что пошло бы в своп не означает, что я собираюсь реально это свопить, глупый.

Я прочитал твой вопль души ниже по тексту, но не нашёл, что на него ответить.

Deleted
()

Увидев скрин на превьюше, подумал «гмм, так близко к вкусам science'а, зайду-ка посмотрю, у кого еще есть чувство прекрасного».
Поскроллил пост до низу, и на тебе.
Жестоко :D

Spirit_of_Stallman ★★★
()
Ответ на: комментарий от Deleted

fargred, давайте сравним поточнее, у меня открыто 20 вкладок, как минимум половина из них уже 23 дня открыты, размер $ ps -o rss -C altyo RSS 65760

libvte 0.34.0 Это с учётом протечки памяти при изменении состояния в gtklabel в моей версии gtk 3.6.0

Сколько линий прокрутки у вас сохраняется?

shm
()

Непонятно зачем, но круто!

actics
()

Этот пост-скриншот для тех, в большей степени новичков, кто не в курсе дела такой возможности настройки.

Спасибо. На самом деле не знал о такой возможности

das_tier ★★★★★
()

export COLORTERM=«termite» && /usr/bin/termite --geometry=1248x620+60+40

возможно можно как-то более по умному, но и так работает, всё ок.

В sh-подобных лучше запускать так:

COLORTERM=termite termite --geometry=1248x620+60+40

Чтобы ещё и в csh-подобных работало можно добавить вначале комманду «env».

mihalych ★★★
()

скриншот симпатичный, только не понимаю, как можно использовать разные шрифты в Vim.

Что это за ядро "-geek"? Самосборное?

insider ★★★
()
Ответ на: комментарий от insider

только не понимаю, как можно использовать разные шрифты в Vim.

разные шрифты используются в разных терминалах, вим не имеет к этому отношения.

Что это за ядро "-geek"?

geek-sources-3.10.1

science ★★☆
() автор топика
Ответ на: комментарий от science

разные шрифты используются в разных терминалах

Понятно, не понятно, как можно пользоваться разными шрифтами в терминале/Vim. Обычно привыкаешь к одному и используешь его.

geek-sources-3.10.1

интересно, а 3.11 пока не выходил, хотелось бы zfs и bfq потестить?
А то я не умею бэкпортировать ядерный код на старые ветки, а в 3.11 radeon, что надо.

insider ★★★
()
Ответ на: комментарий от insider

а 3.11 пока не выходил

пока нет: https://www.kernel.org

Обычно привыкаешь к одному и используешь его.

я и привык, только к двум.

Системные конфиги, конфиг ядра, маны и менджмент системы в целом - шрифт без сглаживания: Terminus или Tewi.
а код, работа, т.е. то, на что смотришь 80% времени в терминале - шрифт со сглаживанием: PragmataPro.

science ★★☆
() автор топика
Ответ на: комментарий от science

использую 3.11rc3 (drm-fixes-3.11 branch), в основном, все работает как надо, но иногда есть время на эксперименты, поэтому хочу попробовать bfq, zfs...

на что смотришь 80% времени в терминале

Из шрифтов мне нравятся Anonymous Pro (10pt) и Dejavu Sans Mono. Работаю в терминале около 60% времени, Anonymous Pro полностью устраивает.

insider ★★★
()
Ответ на: комментарий от iVS

вот только апостроф, умлауты и ударения очень мелкие, жесть. Например я работаю с испанским - неудобно. Но терплю, другого такого eye-candy шрифта нет. Есть хорошие шрифты, похожие и т.д. Но прагмата заруливает - чем дольше пользуешься тем больше нравиться.

science ★★☆
() автор топика
Ответ на: комментарий от science

Те, что со сглаживанием - это везде PragmataPro{ForPowerline}, коммерческий проприетарный шрифт. Дорогой. Можно украсть (я после того как украл - попользовался и купил). Вот уже почти год он радует глаза, лучше и удобнее шрифта не найти, хотя есть претензии к апострофам и умляутам.

автору можно написать, он пофиксит. после того как купил шрифт, нашел в нем какой-то мелкий косяк. написал ему. он позже выпустил обновление и прислал.

Deleted
()
Ответ на: комментарий от science

Есть хорошие шрифты, похожие и т.д. Но прагмата заруливает - чем дольше пользуешься тем больше нравиться.

утраиваю

Deleted
()
Ответ на: комментарий от mazdai

как обои генерировал?

я видел подобную обоину в e17, попросил - мне сказали, что это не обоина, а фон + затайленный паттерн + композитинг,
короче сделал в гимпе обоину только 1366x768.

cde

что это?

science ★★☆
() автор топика
Последнее исправление: science (всего исправлений: 1)
Ответ на: комментарий от science

поверлайн - абсолютно не тормозит, если во-первых, это vim-powerline - первая версия поверлаяна на VimL, объявленный deprecated, а не то тормозное чудовище на питоне, которое вышло позже.

Ты таки не поверишь, но после того как я поставил чудовище на питоне у меня почему-то перестал тормозить lusty. Он удобен тем, что у него fuzzy finding, не пользовал? Да и шрифты он(powerline на питоне) патчит посимпатичнее.

У тебя ещё не бывает тормозов когда куча файлов открыта и в них ещё что-то наредактировано?

e7z0x1 ★★★★★
()
Последнее исправление: e7z0x1 (всего исправлений: 1)
Ответ на: комментарий от e7z0x1

fuzzy finding

что имеется в виду, поддержка ctrlp.vim что-ли?

не бывает тормозов когда куча файлов открыта и в них ещё что-то наредактировано?

я не использую табы вообще и одновременно у меня не бывает открыто более 10 файлов. Нет, не замечал чтобы тормозило. Вим работает идеально.

science ★★☆
() автор топика
Ответ на: комментарий от science

я не использую табы вообще и одновременно у меня не бывает открыто более 10 файлов. Нет, не замечал чтобы тормозило. Вим работает идеально.

А это не табы, это буферы в фоне, которые остаются после перезапуска. Пока вроде грешил на gundo, а вообще без профайлера уже не разобраться где там собака поралысь. Или как вариант использовать твой этот focus, спасибо за наводку, кстати, и отрубать всё что не используется. Причем тормоза проявляются на больших файлах ~4-5k строк, мелкота по барабану.

что имеется в виду, поддержка ctrlp.vim что-ли?

Похоже по виду, но не оно, короче это надо видеть

http://youtu.be/dLMKVYqdarY

Удобная фигня, но тормозит, собака, вот как раз в этом случае.

e7z0x1 ★★★★★
()
Ответ на: комментарий от e7z0x1

Если вдруг у кого-то будет такая же проблема решение в том, чтобы не использовать вот это,

augroup FastEscape
  autocmd!
  set notimeout
  set ttimeout
  set timeoutlen=10
  au InsertEnter * set timeout
  au InsertLeave * set notimeout
augroup END

а просто установить ttimeout и timeoutlen руками

e7z0x1 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.