'cat.py' created by Richard Heck
This script resembles the unix command 'cat', valid now on every
platform.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34828
a592a061-630c-0410-9148-
cb99ea01b6c8
FIND_PROGRAM(_PERL_EXECUTABLE perl)
FIND_PROGRAM(_PYTHON_EXECUTABLE python)
-if((NOT ${_PERL_EXECUTABLE} MATCHES "-NOTFOUND") AND ( NOT ${_PYTHON_EXECUTABLE} MATCHES "-NOTFOUND"))
+if( NOT ${_PYTHON_EXECUTABLE} MATCHES "-NOTFOUND")
if(LYX_NLS)
find_package(LyXGettext REQUIRED)
include_directories(${TOP_SRC_DIR}/po)
ADD_CUSTOM_COMMAND(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.cat.pot"
- COMMAND ${_PERL_EXECUTABLE}
- ARGS -e "\"while(<>){print;}\"" ${_py_sources} > "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.cat.pot"
+ COMMAND ${_PYTHON_EXECUTABLE}
+ ARGS "${CMAKE_SOURCE_DIR}/po/cat.py" ${_py_sources} > "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.cat.pot"
DEPENDS ${_py_sources}
)
--- /dev/null
+#! /usr/bin/env python
+
+import sys
+from getopt import getopt
+
+usage = '''
+python cat.py -o OUTFILE FILE1 FILE2 .... FILEn
+
+Replacement for:
+ cat FILE1 FILE2 ... .FILEn > OUTFILE
+If the -o argument is not given, writes to stdout.
+'''
+
+outfile = ""
+
+(options, args) = getopt(sys.argv[1:], "ho:")
+for (opt, param) in options:
+ if opt == "-o":
+ outfile = param
+ elif opt == "-h":
+ print usage
+ sys.exit(0)
+
+out = sys.stdout
+if outfile:
+ out = open(outfile, "w")
+
+for f in args:
+ fil = open(f, "r")
+ for l in fil:
+ out.write(l)
+ fil.close()
+
+if outfile:
+ out.close()