vimrc - текущий рабочий каталог

Прежде всего позвольте мне сказать, что я не думаю, что тонкие различия между Байт-кодом Java и MSIL - что-то, что должно побеспокоить разработчика.NET новичка. Они оба служат той же цели определить абстрактную целевую машину, которая является слоем выше реальной машины, используемой в конце.

MSIL и Байт-код Java очень похожи, на самом деле существует инструмент, названный Кузнечик , который переводит MSIL в Байт-код Java, я был частью группы разработчиков для Кузнечика, таким образом, я могу поделиться небольшим количеством своих (увядших) знаний. Обратите внимание на то, что я прекратил работать над этим вокруг, когда платформа.NET 2.0 вышла, таким образом, некоторые из этих вещей не могут больше быть верными (раз так оставьте комментарий, и я исправлю ее).

  • .NET позволяет определяемые пользователем типы, которые имеют семантику значения, как соединено к регулярный ссылочная семантика (struct).
  • .NET поддерживает неподписанные типы, это делает систему команд немного более богатой.
  • Java включает спецификацию исключения методов в байт-коде. Хотя спецификация исключения обычно только осуществляется компилятором, она может быть осуществлена JVM, если загрузчик класса кроме значения по умолчанию каждый используется.
  • дженерики.NET выражаются в IL, в то время как дженерики Java только используют стирание типа .
  • атрибуты.NET не имеют никакого эквивалента в Java (это все еще верно?).
  • .NET enums не намного больше, чем обертки вокруг целых типов, в то время как Java enums является в значительной степени полностью оперенными классами (благодаря интернет-Друг для комментария).
  • .NET имеет out и ref параметры.

существуют другие языковые различия, но большинства из них не выражают по поводу уровня кода байта, например, если не изменяет память, Java не - static внутренние классы (которые не существуют в.NET), не функция байт-кода, компилятор генерирует дополнительный аргумент конструктору внутреннего класса и передает внешний объект. То же верно для лямбда-выражений.NET.

5
задан chadgh 11 September 2009 в 18:20
поделиться

3 ответа

См. : help autochdir . Vim может автоматически изменить текущий рабочий каталог на каталог, в котором находится файл, который вы редактируете.

В противном случае, если вы хотите сделать это вручную, см. : help cd и : help lcd .

6
ответ дан 14 December 2019 в 01:12
поделиться

см. : модификаторы имени файла

:!latex % -output-directory %:h
2
ответ дан 14 December 2019 в 01:12
поделиться

Скорее всего, вы запускаете vim из домашнего каталога, поэтому для него это текущий . Команда latex , вызываемая из vim, также имеет домашний каталог как текущий.

Вы, вероятно, знаете это и хотите просто извлечь путь из имени файла и передать его в качестве аргумента для -o параметр latex команды. Просто используйте возможности оболочки:

:!latex % -output-directory `dirname "%"`

Я не уверен, что это вариант -output-directory , но вы получите то, что просили - имя каталога редактируемого файла.

1
ответ дан 14 December 2019 в 01:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: