Передача потока вывода консольной команды в Sublime Text 2

Категория: Linux

Передать поток вывода (результат работы команды) в Sublime Text 2 можно только через временный файл!

Создайте bash скрипт sublime-text-pipe:

#!/bin/bash

# Allow piping to Sublime Text. Doesn't interfere with normal use.

# Is stdin a terminal?
if test -t 0; then
	# Stdin is a terminal.
	# Open sublime normally.
	
	# sublime-text "$@"
	# Run without
	# Run command in silent mode and detach a process from terminal
	(sublime-text "$@" &) 2> /dev/null > /dev/null
else
	# Stdin is not a terminal, it must be a pipe.
	# Pipe stdin to a temporary file, and open it in sublime.
	tmp_file=$(tempfile)
	cat > $tmp_file  # читаем поток во временный файл
	# cat >"$tmp_file" && sublime-text "$tmp_file" "$@"
	(sublime-text "$@" $tmp_file &) 2> /dev/null > /dev/null
fi

Передайте ему результат работы команды или файл:

sublime-text-pipe ./some_file.txt
ls -la | sublime-text-pipe

#pipeling, #sublime text 2, #run sublime text in silent mode

категория: Linux