вівторок, 24 лютого 2015 р.

Небольшой трюк при работе с git. Часть 2

В статье Небольшой трюк при работе с git я описал функцию g, которая немного упрощает работу с командой git. Однако, для этой функции не работает стандартное zsh-автодополнение. Помочь может команда compdef, которая позволяет связать существующие правила автодополнения с новой командой. После добавления в .zshrc строк:
# Actually set the compdef to git
compdef g=git
наша жизнь снова станет прекрасной и удивительной.

понеділок, 16 лютого 2015 р.

Небольшой трюк при работе с git

Добавив следующий фрагмент в .zshrc (или .bashrc):
function g {
  if [[ $# > 0 ]]; then
    git $@
  else
    git status
  fi
}
получим очень удобную функцию g: при вызове без параметров она вызывает git status, с параметрами - соответствующую команду git’а. Пример:

пʼятницю, 6 лютого 2015 р.

Сортировка import’ов в XCode

Озаботился сегодня красивым оформлением import’ов в программах на ObjC. XCode, конечно не Vim, но с помощью Automator’а можно создавать скрипты и для этой IDE. Например, в статье предлагается для сортировки import’ов использовать скрипт вида:
sort | uniq

Но я предпочитаю разбивать import’ы на группы:
  1. Стандартные
  2. Дополнительные библиотеки
  3. Локальные
Например:
@import AVFoundation;
@import GLKit;

#import <AssetsLibrary/AssetsLibrary.h>
#import <iCarousel.h>

#import "PreviewView.h"
#import "ViewController.h"
Поэтому сделал такой скрипт для сортировки:
#! /bin/sh
tempfoo=`basename $0`
ORIG_FN=`mktemp ${TMPDIR:-'/tmp/'}${tempfoo}.XXXXXX`

cat /dev/stdin > $ORIG_FN

grep '@import' $ORIG_FN | sort | uniq
echo
grep '#import *<' $ORIG_FN | sort | uniq
echo
grep '#import *"' $ORIG_FN | sort | uniq

rm $ORIG_FN
Единственный момент, на который следует обратить внимание: в Automator’е следует указать полный путь к этому скрипту.
Сам скрипт можно взять на GitHub’е.