mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-22 21:21:32 +00:00
Fix encoding of filenames in python scripts
* lib/scripts/fig2pstex.py * lib/scripts/fig2pdftex.py * lib/scripts/fig_copy.py * lib/scripts/fen2ascii.py: convert filenames from utf8 to the default locale encoding. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16635 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
8673c7ef02
commit
cff50172f3
@ -1,4 +1,5 @@
|
||||
#! /usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
# file fen2ascii.py
|
||||
# This file is part of LyX, the document processor.
|
||||
@ -11,12 +12,23 @@
|
||||
# This script will convert a chess position in the FEN
|
||||
# format to an ascii representation of the position.
|
||||
|
||||
import sys,string,os
|
||||
import sys, string, os, locale
|
||||
|
||||
# We expect two args, the names of the input and output files.
|
||||
if len(sys.argv) != 3:
|
||||
sys.exit(1)
|
||||
|
||||
language, output_encoding = locale.getdefaultlocale()
|
||||
if output_encoding == None:
|
||||
output_encoding = 'latin1'
|
||||
|
||||
input = unicode(sys.argv[1], 'utf8').encode(output_encoding)
|
||||
output = unicode(sys.argv[2], 'utf8').encode(output_encoding)
|
||||
|
||||
os.close(0)
|
||||
os.close(1)
|
||||
sys.stdin = open(sys.argv[1],"r")
|
||||
sys.stdout = open(sys.argv[2],"w")
|
||||
sys.stdin = open(input, "r")
|
||||
sys.stdout = open(output, "w")
|
||||
|
||||
line = sys.stdin.readline()
|
||||
if line[-1] == '\n':
|
||||
|
@ -28,7 +28,7 @@
|
||||
#
|
||||
|
||||
|
||||
import os, sys, re
|
||||
import os, sys, re, locale
|
||||
|
||||
|
||||
def runCommand(cmd):
|
||||
@ -44,7 +44,12 @@ def runCommand(cmd):
|
||||
if len(sys.argv) != 3:
|
||||
sys.exit(1)
|
||||
|
||||
input, output = sys.argv[1:]
|
||||
language, output_encoding = locale.getdefaultlocale()
|
||||
if output_encoding == None:
|
||||
output_encoding = 'latin1'
|
||||
|
||||
input = unicode(sys.argv[1], 'utf8').encode(output_encoding)
|
||||
output = unicode(sys.argv[2], 'utf8').encode(output_encoding)
|
||||
|
||||
# Fail silently if the file doesn't exist
|
||||
if not os.path.isfile(input):
|
||||
|
@ -27,13 +27,18 @@
|
||||
# the real eps file will be overwritten by a tex file named file.eps.
|
||||
#
|
||||
|
||||
import os, sys
|
||||
import os, sys, locale
|
||||
|
||||
# We expect two args, the names of the input and output files.
|
||||
if len(sys.argv) != 3:
|
||||
sys.exit(1)
|
||||
|
||||
input, output = sys.argv[1:]
|
||||
language, output_encoding = locale.getdefaultlocale()
|
||||
if output_encoding == None:
|
||||
output_encoding = 'latin1'
|
||||
|
||||
input = unicode(sys.argv[1], 'utf8').encode(output_encoding)
|
||||
output = unicode(sys.argv[2], 'utf8').encode(output_encoding)
|
||||
|
||||
# Fail silently if the file doesn't exist
|
||||
if not os.path.isfile(input):
|
||||
|
@ -18,24 +18,31 @@
|
||||
# picture files that are stored as relative paths are replaced
|
||||
# with the absolute path.
|
||||
|
||||
import os, sys
|
||||
import os, sys, locale
|
||||
|
||||
if len(sys.argv) != 3:
|
||||
print >> sys.stderr, "Usage: fig_copy.py <from file> <to file>"
|
||||
sys.exit(1)
|
||||
|
||||
if not os.path.isfile(sys.argv[1]):
|
||||
print >> sys.stderr, "Unable to read", sys.argv[1]
|
||||
language, output_encoding = locale.getdefaultlocale()
|
||||
if output_encoding == None:
|
||||
output_encoding = 'latin1'
|
||||
|
||||
from_file = unicode(sys.argv[1], 'utf8').encode(output_encoding)
|
||||
to_file = unicode(sys.argv[2], 'utf8').encode(output_encoding)
|
||||
|
||||
if not os.path.isfile(from_file):
|
||||
print >> sys.stderr, "Unable to read", from_file
|
||||
sys.exit(1)
|
||||
|
||||
from_dir = os.path.split(os.path.realpath(sys.argv[1]))[0]
|
||||
to_dir = os.path.split(os.path.realpath(sys.argv[2]))[0]
|
||||
from_dir = os.path.split(os.path.realpath(from_file))[0]
|
||||
to_dir = os.path.split(os.path.realpath(to_file))[0]
|
||||
|
||||
# The work is trivial if "to" and "from" are in the same directory.
|
||||
if from_dir == to_dir:
|
||||
import shutil
|
||||
try:
|
||||
shutil.copy(sys.argv[1], sys.argv[2])
|
||||
shutil.copy(from_file, to_file)
|
||||
except:
|
||||
sys.exit(1)
|
||||
sys.exit(0)
|
||||
@ -52,8 +59,8 @@ commentline = re.compile(r'^\s*#.*$')
|
||||
# we allow space in path name
|
||||
figureline = re.compile(r'^(\s*[01]\s*)(\S[\S ]*)(\s*)$')
|
||||
|
||||
input = open(sys.argv[1], 'r')
|
||||
output = open(sys.argv[2], 'w')
|
||||
input = open(from_file, 'r')
|
||||
output = open(to_file, 'w')
|
||||
|
||||
# path in the fig is relative to this path
|
||||
os.chdir(from_dir)
|
||||
|
Loading…
Reference in New Issue
Block a user