Как выровнять тексты в Sublime Text 3? [закрытый]

Я использую плагин Sublime Text 3 под названием AlignTab чтобы выровнять мой код следующим образом:

 Version : 1.4.1
 Author  : Ken Wheeler
 Website : http://kenwheeler.github.io
 Docs    : http://kenwheeler.github.io/slick
 Repo    : http://github.com/kenwheeler/slick
 Issues  : http://github.com/kenwheeler/slick/issues

теперь я хочу, чтобы мои тексты оставались рядом с двоеточием следующим образом:

 Version: 1.4.1
  Author: Ken Wheeler
 Website: http://kenwheeler.github.io
    Docs: http://kenwheeler.github.io/slick
    Repo: http://github.com/kenwheeler/slick
  Issues: http://github.com/kenwheeler/slick/issues

Как мне это сделать ?

2 ответов


вы можете сделать это с AlignTab, не нужен другой плагин. Вам просто нужно использовать более продвинутая функциональность регулярных выражений, как описано на странице GitHub.

вывести Command Palette (Ctrl+ Shift+P на cmd+ shift+P на Mac), введите "AlignTab", нажмите enter, введите это и нажмите enter:

:/r0clf1

опоры @Hank для включения опции 0 пробелов даже не понял, что он не хочет пространства.

объяснение:

  • the : находит
  • the / говорит Хорошо теперь вот некоторые аргументы о том, что я хочу, чтобы вы сделали с двоеточием
  • the r означает право-оправдать первый столбец
  • the 0 означает 0 пробелов после правого столбца
  • the c означает, что центр середине столбец (который является только двоеточием, поэтому он ничего не делает)
  • the l означает левый-оправдать правый столбец
  • the f1 означает только сделать это для первого матча на линии

на AlignTab docs или связанные примеры имеют достаточно информации, чтобы покрыть то, что вам нужно.

если вы выделите исходный текст, затем Cmd + Shift + P (или Ctrl Shift P в windows) и введите aligntab Live Preview mode, вы можете ввести регулярное выражение и использовать специальный синтаксис rlc.

синтаксис:

\s+:/r0c1l

регулярное выражение - \s+ (больше 1 пробелов) к первому:, затем r0 (выровнять справа, 0 пробелов), c1 (центральная метка с 1 отступом вправо), затем l (слева выровнять оставшийся текст). Нет необходимости в "f1" в конце выражения, так как регулярное выражение соответствует ведущим пробелам перед вашим первым двоеточием (в вашем примере).

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

Version: 1.4.1
Author: Ken Wheeler
Website: http://kenwheeler.github.io
Docs: http://kenwheeler.github.io/slick
Repo: http://github.com/kenwheeler/slick
Issues: http://github.com/kenwheeler/slick/issues

затем, чтобы преобразовать в нужный формат ниже, будет:

:/r0c1lf1

преобразован ниже:

Version: 1.4.1
 Author: Ken Wheeler
Website: http://kenwheeler.github.io
   Docs: http://kenwheeler.github.io/slick
   Repo: http://github.com/kenwheeler/slick
 Issues: http://github.com/kenwheeler/slick/issues

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

P.S. Я обнаружил, что табличные примеры из документов AlignTab более полезны, хотя они не представляют реальной реализации AlignTab.