mirror of
https://github.com/python/cpython.git
synced 2025-08-02 16:13:13 +00:00
And the last bit: move IDLE one level up and adjust makefiles
This commit is contained in:
parent
32f5d8f1b1
commit
2db3a8f73e
8 changed files with 350 additions and 25 deletions
55
Mac/IDLE/Info.plist
Normal file
55
Mac/IDLE/Info.plist
Normal file
|
@ -0,0 +1,55 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleDocumentTypes</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CFBundleTypeExtensions</key>
|
||||
<array>
|
||||
<string>py</string>
|
||||
<string>pyw</string>
|
||||
</array>
|
||||
<key>CFBundleTypeIconFile</key>
|
||||
<string>PythonSource.icns</string>
|
||||
<key>CFBundleTypeName</key>
|
||||
<string>Python Script</string>
|
||||
<key>CFBundleTypeRole</key>
|
||||
<string>Editor</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CFBundleTypeExtensions</key>
|
||||
<array>
|
||||
<string>pyc</string>
|
||||
<string>pyo</string>
|
||||
</array>
|
||||
<key>CFBundleTypeIconFile</key>
|
||||
<string>PythonCompiled.icns</string>
|
||||
<key>CFBundleTypeName</key>
|
||||
<string>Python Bytecode Document</string>
|
||||
<key>CFBundleTypeRole</key>
|
||||
<string>Editor</string>
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>IDLE</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string>2.5, © 001-2006 Python Software Foundation</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>IDLE.icns</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.python.IDLE</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>IDLE</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>2.5</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.5</string>
|
||||
</dict>
|
||||
</plist>
|
54
Mac/IDLE/Makefile.in
Normal file
54
Mac/IDLE/Makefile.in
Normal file
|
@ -0,0 +1,54 @@
|
|||
prefix=@prefix@
|
||||
CC=@CC@
|
||||
LD=@CC@
|
||||
BASECFLAGS=@BASECFLAGS@
|
||||
OPT=@OPT@
|
||||
CFLAGS=$(BASECFLAGS) $(OPT)
|
||||
LDFLAGS=@LDFLAGS@
|
||||
srcdir= @srcdir@
|
||||
VERSION= @VERSION@
|
||||
UNIVERSALSDK=@UNIVERSALSDK@
|
||||
builddir= ../..
|
||||
|
||||
RUNSHARED= @RUNSHARED@
|
||||
BUILDEXE= @BUILDEXEEXT@
|
||||
BUILDPYTHON= $(builddir)/python$(BUILDEXE)
|
||||
|
||||
# Deployment target selected during configure, to be checked
|
||||
# by distutils
|
||||
MACOSX_DEPLOYMENT_TARGET=@CONFIGURE_MACOSX_DEPLOYMENT_TARGET@
|
||||
@EXPORT_MACOSX_DEPLOYMENT_TARGET@export MACOSX_DEPLOYMENT_TARGET
|
||||
|
||||
BUNDLEBULDER=$(srcdir)/../../Lib/plat-mac/bundlebuilder.py
|
||||
|
||||
PYTHONAPPSDIR=/Applications/MacPython $(VERSION)
|
||||
|
||||
all: IDLE.app
|
||||
|
||||
install: IDLE.app $(srcdir)/config-main.def $(srcdir)/config-extensions.def
|
||||
test -d "$(DESTDIR)$(PYTHONAPPSDIR)" || mkdir -p "$(DESTDIR)$(PYTHONAPPSDIR)"
|
||||
-test -d "$(DESTDIR)$(PYTHONAPPSDIR)/IDLE.app" && rm -r "$(DESTDIR)$(PYTHONAPPSDIR)/IDLE.app"
|
||||
cp -PR IDLE.app "$(DESTDIR)$(PYTHONAPPSDIR)"
|
||||
touch "$(DESTDIR)$(PYTHONAPPSDIR)/IDLE.app"
|
||||
cp $(srcdir)/config-main.def "$(DESTDIR)$(prefix)/lib/python$(VERSION)/idlelib/config-main.def"
|
||||
cp $(srcdir)/config-extensions.def "$(DESTDIR)$(prefix)/lib/python$(VERSION)/idlelib/config-extensions.def"
|
||||
|
||||
clean:
|
||||
rm -rf IDLE.app
|
||||
|
||||
IDLE.app: \
|
||||
$(srcdir)/../Icons/IDLE.icns $(srcdir)/idlemain.py \
|
||||
$(srcdir)/../Icons/PythonSource.icns \
|
||||
$(srcdir)/../Icons/PythonCompiled.icns
|
||||
rm -fr IDLE.app
|
||||
$(RUNSHARED) $(BUILDPYTHON) $(BUNDLEBULDER) \
|
||||
--builddir=. \
|
||||
--name=IDLE \
|
||||
--link-exec \
|
||||
--plist=$(srcdir)/Info.plist \
|
||||
--mainprogram=$(srcdir)/idlemain.py \
|
||||
--iconfile=$(srcdir)/../Icons/IDLE.icns \
|
||||
--resource=$(srcdir)/../Icons/PythonSource.icns \
|
||||
--resource=$(srcdir)/../Icons/PythonCompiled.icns \
|
||||
--python=$(prefix)/Resources/Python.app/Contents/MacOS/Python \
|
||||
build
|
88
Mac/IDLE/config-extensions.def
Normal file
88
Mac/IDLE/config-extensions.def
Normal file
|
@ -0,0 +1,88 @@
|
|||
# config-extensions.def
|
||||
#
|
||||
# IDLE reads several config files to determine user preferences. This
|
||||
# file is the default configuration file for IDLE extensions settings.
|
||||
#
|
||||
# Each extension must have at least one section, named after the extension
|
||||
# module. This section must contain an 'enable' item (=1 to enable the
|
||||
# extension, =0 to disable it), it may contain 'enable_editor' or 'enable_shell'
|
||||
# items, to apply it only to editor/shell windows, and may also contain any
|
||||
# other general configuration items for the extension.
|
||||
#
|
||||
# Each extension must define at least one section named ExtensionName_bindings
|
||||
# or ExtensionName_cfgBindings. If present, ExtensionName_bindings defines
|
||||
# virtual event bindings for the extension that are not user re-configurable.
|
||||
# If present, ExtensionName_cfgBindings defines virtual event bindings for the
|
||||
# extension that may be sensibly re-configured.
|
||||
#
|
||||
# If there are no keybindings for a menus' virtual events, include lines like
|
||||
# <<toggle-code-context>>= (See [CodeContext], below.)
|
||||
#
|
||||
# Currently it is necessary to manually modify this file to change extension
|
||||
# key bindings and default values. To customize, create
|
||||
# ~/.idlerc/config-extensions.cfg and append the appropriate customized
|
||||
# section(s). Those sections will override the defaults in this file.
|
||||
#
|
||||
# Note: If a keybinding is already in use when the extension is
|
||||
# loaded, the extension's virtual event's keybinding will be set to ''.
|
||||
#
|
||||
# See config-keys.def for notes on specifying keys and extend.txt for
|
||||
# information on creating IDLE extensions.
|
||||
|
||||
[FormatParagraph]
|
||||
enable=1
|
||||
[FormatParagraph_cfgBindings]
|
||||
format-paragraph=<Option-Key-q>
|
||||
|
||||
[AutoExpand]
|
||||
enable=1
|
||||
[AutoExpand_cfgBindings]
|
||||
expand-word=<Option-Key-slash>
|
||||
|
||||
[ZoomHeight]
|
||||
enable=1
|
||||
[ZoomHeight_cfgBindings]
|
||||
zoom-height=<Option-Key-0>
|
||||
|
||||
[ScriptBinding]
|
||||
enable=1
|
||||
[ScriptBinding_cfgBindings]
|
||||
run-module=<Key-F5>
|
||||
check-module=<Option-Key-x>
|
||||
|
||||
[CallTips]
|
||||
enable=1
|
||||
[CallTips_cfgBindings]
|
||||
force-open-calltip=<Control-Key-backslash>
|
||||
[CallTips_bindings]
|
||||
try-open-calltip=<KeyRelease-parenleft>
|
||||
refresh-calltip=<KeyRelease-parenright> <KeyRelease-0>
|
||||
|
||||
[ParenMatch]
|
||||
enable=1
|
||||
style= expression
|
||||
flash-delay= 500
|
||||
bell= 1
|
||||
[ParenMatch_cfgBindings]
|
||||
flash-paren=<Control-Key-0>
|
||||
[ParenMatch_bindings]
|
||||
paren-closed=<KeyRelease-parenright> <KeyRelease-bracketright> <KeyRelease-braceright>
|
||||
|
||||
[AutoComplete]
|
||||
enable=1
|
||||
popupwait=2000
|
||||
[AutoComplete_cfgBindings]
|
||||
force-open-completions=<Control-Key-space>
|
||||
[AutoComplete_bindings]
|
||||
autocomplete=<Key-Tab>
|
||||
try-open-completions=<KeyRelease-period> <KeyRelease-slash> <KeyRelease-backslash>
|
||||
|
||||
[CodeContext]
|
||||
enable=1
|
||||
enable_shell=0
|
||||
numlines=3
|
||||
visible=0
|
||||
bgcolor=LightGray
|
||||
fgcolor=Black
|
||||
[CodeContext_bindings]
|
||||
toggle-code-context=
|
79
Mac/IDLE/config-main.def
Normal file
79
Mac/IDLE/config-main.def
Normal file
|
@ -0,0 +1,79 @@
|
|||
# IDLE reads several config files to determine user preferences. This
|
||||
# file is the default config file for general idle settings.
|
||||
#
|
||||
# When IDLE starts, it will look in
|
||||
# the following two sets of files, in order:
|
||||
#
|
||||
# default configuration
|
||||
# ---------------------
|
||||
# config-main.def the default general config file
|
||||
# config-extensions.def the default extension config file
|
||||
# config-highlight.def the default highlighting config file
|
||||
# config-keys.def the default keybinding config file
|
||||
#
|
||||
# user configuration
|
||||
# -------------------
|
||||
# ~/.idlerc/config-main.cfg the user general config file
|
||||
# ~/.idlerc/config-extensions.cfg the user extension config file
|
||||
# ~/.idlerc/config-highlight.cfg the user highlighting config file
|
||||
# ~/.idlerc/config-keys.cfg the user keybinding config file
|
||||
#
|
||||
# On Windows2000 and Windows XP the .idlerc directory is at
|
||||
# Documents and Settings\<username>\.idlerc
|
||||
#
|
||||
# On Windows98 it is at c:\.idlerc
|
||||
#
|
||||
# Any options the user saves through the config dialog will be saved to
|
||||
# the relevant user config file. Reverting any general setting to the
|
||||
# default causes that entry to be wiped from the user file and re-read
|
||||
# from the default file. User highlighting themes or keybinding sets are
|
||||
# retained unless specifically deleted within the config dialog. Choosing
|
||||
# one of the default themes or keysets just applies the relevant settings
|
||||
# from the default file.
|
||||
#
|
||||
# Additional help sources are listed in the [HelpFiles] section and must be
|
||||
# viewable by a web browser (or the Windows Help viewer in the case of .chm
|
||||
# files). These sources will be listed on the Help menu. The pattern is
|
||||
# <sequence_number = menu item;/path/to/help/source>
|
||||
# You can't use a semi-colon in a menu item or path. The path will be platform
|
||||
# specific because of path separators, drive specs etc.
|
||||
#
|
||||
# It is best to use the Configuration GUI to set up additional help sources!
|
||||
# Example:
|
||||
#1 = My Extra Help Source;/usr/share/doc/foo/index.html
|
||||
#2 = Another Help Source;/path/to/another.pdf
|
||||
|
||||
[General]
|
||||
editor-on-startup= 0
|
||||
autosave= 0
|
||||
print-command-posix=lpr %s
|
||||
print-command-win=start /min notepad /p %s
|
||||
delete-exitfunc= 1
|
||||
|
||||
[EditorWindow]
|
||||
width= 80
|
||||
height= 40
|
||||
font= courier
|
||||
font-size= 10
|
||||
font-bold= 0
|
||||
encoding= none
|
||||
|
||||
[FormatParagraph]
|
||||
paragraph=70
|
||||
|
||||
[Indent]
|
||||
use-spaces= 1
|
||||
num-spaces= 4
|
||||
|
||||
[Theme]
|
||||
default= 1
|
||||
name= IDLE Classic
|
||||
|
||||
[Keys]
|
||||
default= 1
|
||||
name= IDLE Classic Mac
|
||||
|
||||
[History]
|
||||
cyclic=1
|
||||
|
||||
[HelpFiles]
|
27
Mac/IDLE/idlemain.py
Normal file
27
Mac/IDLE/idlemain.py
Normal file
|
@ -0,0 +1,27 @@
|
|||
"""
|
||||
Bootstrap script for IDLE as an application bundle.
|
||||
"""
|
||||
import sys, os
|
||||
|
||||
from idlelib.PyShell import main
|
||||
|
||||
# Change the current directory the user's home directory, that way we'll get
|
||||
# a more useful default location in the open/save dialogs.
|
||||
os.chdir(os.path.expanduser('~/Documents'))
|
||||
|
||||
|
||||
# Make sure sys.executable points to the python interpreter inside the
|
||||
# framework, instead of at the helper executable inside the application
|
||||
# bundle (the latter works, but doesn't allow access to the window server)
|
||||
sys.executable = os.path.join(sys.prefix, 'bin', 'python')
|
||||
|
||||
# Look for the -psn argument that the launcher adds and remove it, it will
|
||||
# only confuse the IDLE startup code.
|
||||
for idx, value in enumerate(sys.argv):
|
||||
if value.startswith('-psn_'):
|
||||
del sys.argv[idx]
|
||||
break
|
||||
|
||||
#argvemulator.ArgvCollector().mainloop()
|
||||
if __name__ == '__main__':
|
||||
main()
|
Loading…
Add table
Add a link
Reference in a new issue