From 0e20f7eb7e6244cac52b161dd7fc64b020fd4b72 Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Wed, 12 Dec 2007 16:22:41 -0600 Subject: [PATCH 01/10] Fix compile on 64bit linux --- vm/platform.h | 1 - 1 file changed, 1 deletion(-) diff --git a/vm/platform.h b/vm/platform.h index a3b7350b69..d5687b849d 100644 --- a/vm/platform.h +++ b/vm/platform.h @@ -72,7 +72,6 @@ #elif defined(FACTOR_ARM) #include "os-linux-arm.h" #elif defined(FACTOR_AMD64) - #include "os-unix-ucontext.h" #include "os-linux-x86-64.h" #else #error "Unsupported Linux flavor" From e640f7bf3098e17b43705836df859ae8356af426 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Wed, 12 Dec 2007 18:24:42 -0500 Subject: [PATCH 02/10] Updated windows release script --- misc/factor.el.html | 64 ++++++++++++++++++++++++++++++++++++++ misc/macos-release.sh.html | 64 ++++++++++++++++++++++++++++++++++++++ misc/windows-release.sh | 6 ++++ 3 files changed, 134 insertions(+) create mode 100755 misc/factor.el.html create mode 100755 misc/macos-release.sh.html diff --git a/misc/factor.el.html b/misc/factor.el.html new file mode 100755 index 0000000000..1d64f0f0ab --- /dev/null +++ b/misc/factor.el.html @@ -0,0 +1,64 @@ +C:\cygwin\home\Slava\factor/misc/factor.el
;; Eduardo Cavazos - wayo.cavazos@gmail.com

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Add these lines to your .emacs file:

;; (load-file "/scratch/repos/Factor/misc/factor.el")
;; (setq factor-binary "/scratch/repos/Factor/factor")
;; (setq factor-image "/scratch/repos/Factor/factor.image")

;; Of course, you'll have to edit the directory paths for your system
;; accordingly.

;; That's all you have to do to "install" factor.el on your
;; system. Whenever you edit a factor file, Emacs will know to switch
;; to Factor mode.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; M-x run-factor === Start a Factor listener inside Emacs

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; BUG: A double quote character on a commented line will break the
;; syntax highlighting for that line.

(defgroup factor nil
"Factor mode"
:group 'languages)

(defvar factor-mode-syntax-table nil
"Syntax table used while in Factor mode.")

(if factor-mode-syntax-table
()
(let ((i 0))
(setq factor-mode-syntax-table (make-syntax-table))

;; Default is atom-constituent
(while (< i 256)
(modify-syntax-entry i "_ " factor-mode-syntax-table)
(setq i (1+ i)))

;; Word components.
(setq i ?0)
(while (<= i ?9)
(modify-syntax-entry i "w " factor-mode-syntax-table)
(setq i (1+ i)))
(setq i ?A)
(while (<= i ?Z)
(modify-syntax-entry i "w " factor-mode-syntax-table)
(setq i (1+ i)))
(setq i ?a)
(while (<= i ?z)
(modify-syntax-entry i "w " factor-mode-syntax-table)
(setq i (1+ i)))

;; Whitespace
(modify-syntax-entry ?\t " " factor-mode-syntax-table)
(modify-syntax-entry ?\n ">" factor-mode-syntax-table)
(modify-syntax-entry ?\f " " factor-mode-syntax-table)
(modify-syntax-entry ?\r " " factor-mode-syntax-table)
(modify-syntax-entry ? " " factor-mode-syntax-table)

(modify-syntax-entry ?\[ "(] " factor-mode-syntax-table)
(modify-syntax-entry ?\] ")[ " factor-mode-syntax-table)
(modify-syntax-entry ?{ "(} " factor-mode-syntax-table)
(modify-syntax-entry ?} "){ " factor-mode-syntax-table)

(modify-syntax-entry ?\( "()" factor-mode-syntax-table)
(modify-syntax-entry ?\) ")(" factor-mode-syntax-table)
(modify-syntax-entry ?\" "\" " factor-mode-syntax-table)))

(defvar factor-mode-map (make-sparse-keymap))

(defcustom factor-mode-hook nil
"Hook run when entering Factor mode."
:type 'hook
:group 'factor)

(defconst factor-font-lock-keywords
'(("#!.*$" . font-lock-comment-face)
("!( .* )" . font-lock-comment-face)
("^!.*$" . font-lock-comment-face)
(" !.*$" . font-lock-comment-face)
("( .* )" . font-lock-comment-face)
"MAIN:"
"IN:" "USING:" "TUPLE:" "^C:" "^M:" "USE:" "REQUIRE:" "PROVIDE:"
"REQUIRES:"
"GENERIC:" "GENERIC#" "SYMBOL:" "PREDICATE:" "VAR:" "VARS:"
"C-STRUCT:"
"C-UNION:" "<PRIVATE" "PRIVATE>" "MACRO:" "MACRO::" "DEFER:" "TYPEDEF:"))

(defun factor-mode ()
"A mode for editing programs written in the Factor programming language."
(interactive)
(kill-all-local-variables)
(use-local-map factor-mode-map)
(setq major-mode 'factor-mode)
(setq mode-name "Factor")
(make-local-variable 'comment-start)
(setq comment-start "! ")
(make-local-variable 'font-lock-defaults)
(setq font-lock-defaults
'(factor-font-lock-keywords nil nil nil nil))
(set-syntax-table factor-mode-syntax-table)
(run-hooks 'factor-mode-hooks))

(add-to-list 'auto-mode-alist '("\\.factor\\'" . factor-mode))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(require 'comint)

(defvar factor-binary "/scratch/repos/Factor/factor")
(defvar factor-image "/scratch/repos/Factor/factor.image")

(defun factor-telnet-to-port (port)
(interactive "nPort: ")
(switch-to-buffer
(make-comint-in-buffer "factor-telnet" nil (cons "localhost" port))))

(defun factor-telnet ()
(interactive)
(factor-telnet-to-port 9000))

(defun factor-telnet-factory ()
(interactive)
(factor-telnet-to-port 9010))

(defun factor-run-file ()
(interactive)
(comint-send-string "*factor*" (format "\"%s\"" (buffer-file-name)))
(comint-send-string "*factor*" " run-file\n"))

(defun factor-send-region (start end)
(interactive "r")
(comint-send-region "*factor*" start end)
(comint-send-string "*factor*" "\n"))

(defun factor-see ()
(interactive)
(comint-send-string "*factor*" "\\ ")
(comint-send-string "*factor*" (thing-at-point 'sexp))
(comint-send-string "*factor*" " see\n"))

(defun factor-help ()
(interactive)
(comint-send-string "*factor*" "\\ ")
(comint-send-string "*factor*" (thing-at-point 'sexp))
(comint-send-string "*factor*" " help\n"))

(defun factor-edit ()
(interactive)
(comint-send-string "*factor*" "\\ ")
(comint-send-string "*factor*" (thing-at-point 'sexp))
(comint-send-string "*factor*" " edit\n"))

(defun factor-comment-line ()
(interactive)
(beginning-of-line)
(insert "! "))

(define-key factor-mode-map "\C-c\C-f" 'factor-run-file)
(define-key factor-mode-map "\C-c\C-r" 'factor-send-region)
(define-key factor-mode-map "\C-c\C-s" 'factor-see)
(define-key factor-mode-map "\C-ce" 'factor-edit)
(define-key factor-mode-map "\C-c\C-h" 'factor-help)
(define-key factor-mode-map "\C-cc" 'comment-region)
(define-key factor-mode-map [return] 'newline-and-indent)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; factor-listener-mode
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(define-derived-mode factor-listener-mode comint-mode "Factor Listener")

(define-key factor-listener-mode-map [f8] 'factor-refresh-all)

(defun run-factor ()
(interactive)
(switch-to-buffer
(make-comint-in-buffer "factor" nil factor-binary nil
(concat "-i=" factor-image)
"-run=listener"))
(factor-listener-mode))

(defun factor-refresh-all ()
(interactive)
(comint-send-string "*factor*" "refresh-all\n"))
\ No newline at end of file diff --git a/misc/macos-release.sh.html b/misc/macos-release.sh.html new file mode 100755 index 0000000000..17091e7bb5 --- /dev/null +++ b/misc/macos-release.sh.html @@ -0,0 +1,64 @@ +C:\cygwin\home\Slava\factor/misc/macos-release.sh
TARGET=$1

if [ "$TARGET" = "x86" ]; then
CPU="x86.32"
else
CPU="ppc"
fi

make macosx-$TARGET
Factor.app/Contents/MacOS/factor -i=boot.$CPU.image -no-user-init

VERSION=0.91
DISK_IMAGE_DIR=Factor-$VERSION
DISK_IMAGE=Factor-$VERSION-$TARGET.dmg

rm -f $DISK_IMAGE
rm -rf $DISK_IMAGE_DIR
mkdir $DISK_IMAGE_DIR
mkdir -p $DISK_IMAGE_DIR/Factor/
cp -R Factor.app $DISK_IMAGE_DIR/Factor/Factor.app
chmod +x cp_dir
cp factor.image license.txt README.txt $DISK_IMAGE_DIR/Factor/
find core extra fonts misc unmaintained -type f \
-exec ./cp_dir {} $DISK_IMAGE_DIR/Factor/{} \;
hdiutil create -srcfolder "$DISK_IMAGE_DIR" -fs HFS+ \
-volname "$DISK_IMAGE_DIR" "$DISK_IMAGE"
\ No newline at end of file diff --git a/misc/windows-release.sh b/misc/windows-release.sh index 052dc396ae..a32292e16a 100644 --- a/misc/windows-release.sh +++ b/misc/windows-release.sh @@ -6,9 +6,15 @@ if [ "$CPU" = "x86" ]; then fi make windows-nt-x86 + +wget http://factorcode.org/dlls/freetype6.dll +wget http://factorcode.org/dlls/zlib1.dll +wget http://factorcode.org/images/$VERSION/boot.x86.32.image + CMD="./factor-nt -i=boot.x86.32.image -no-user-init $FLAGS" echo $CMD $CMD +rm -rf .git/ rm -rf Factor.app/ rm -rf vm/ rm -f Makefile From 9af1c38a69b9f6848fe6f080be82fb0b983800aa Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Wed, 12 Dec 2007 18:25:03 -0500 Subject: [PATCH 03/10] Remove accidentally added files --- misc/factor.el.html | 64 -------------------------------------- misc/macos-release.sh.html | 64 -------------------------------------- 2 files changed, 128 deletions(-) delete mode 100755 misc/factor.el.html delete mode 100755 misc/macos-release.sh.html diff --git a/misc/factor.el.html b/misc/factor.el.html deleted file mode 100755 index 1d64f0f0ab..0000000000 --- a/misc/factor.el.html +++ /dev/null @@ -1,64 +0,0 @@ -C:\cygwin\home\Slava\factor/misc/factor.el
;; Eduardo Cavazos - wayo.cavazos@gmail.com

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Add these lines to your .emacs file:

;; (load-file "/scratch/repos/Factor/misc/factor.el")
;; (setq factor-binary "/scratch/repos/Factor/factor")
;; (setq factor-image "/scratch/repos/Factor/factor.image")

;; Of course, you'll have to edit the directory paths for your system
;; accordingly.

;; That's all you have to do to "install" factor.el on your
;; system. Whenever you edit a factor file, Emacs will know to switch
;; to Factor mode.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; M-x run-factor === Start a Factor listener inside Emacs

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; BUG: A double quote character on a commented line will break the
;; syntax highlighting for that line.

(defgroup factor nil
"Factor mode"
:group 'languages)

(defvar factor-mode-syntax-table nil
"Syntax table used while in Factor mode.")

(if factor-mode-syntax-table
()
(let ((i 0))
(setq factor-mode-syntax-table (make-syntax-table))

;; Default is atom-constituent
(while (< i 256)
(modify-syntax-entry i "_ " factor-mode-syntax-table)
(setq i (1+ i)))

;; Word components.
(setq i ?0)
(while (<= i ?9)
(modify-syntax-entry i "w " factor-mode-syntax-table)
(setq i (1+ i)))
(setq i ?A)
(while (<= i ?Z)
(modify-syntax-entry i "w " factor-mode-syntax-table)
(setq i (1+ i)))
(setq i ?a)
(while (<= i ?z)
(modify-syntax-entry i "w " factor-mode-syntax-table)
(setq i (1+ i)))

;; Whitespace
(modify-syntax-entry ?\t " " factor-mode-syntax-table)
(modify-syntax-entry ?\n ">" factor-mode-syntax-table)
(modify-syntax-entry ?\f " " factor-mode-syntax-table)
(modify-syntax-entry ?\r " " factor-mode-syntax-table)
(modify-syntax-entry ? " " factor-mode-syntax-table)

(modify-syntax-entry ?\[ "(] " factor-mode-syntax-table)
(modify-syntax-entry ?\] ")[ " factor-mode-syntax-table)
(modify-syntax-entry ?{ "(} " factor-mode-syntax-table)
(modify-syntax-entry ?} "){ " factor-mode-syntax-table)

(modify-syntax-entry ?\( "()" factor-mode-syntax-table)
(modify-syntax-entry ?\) ")(" factor-mode-syntax-table)
(modify-syntax-entry ?\" "\" " factor-mode-syntax-table)))

(defvar factor-mode-map (make-sparse-keymap))

(defcustom factor-mode-hook nil
"Hook run when entering Factor mode."
:type 'hook
:group 'factor)

(defconst factor-font-lock-keywords
'(("#!.*$" . font-lock-comment-face)
("!( .* )" . font-lock-comment-face)
("^!.*$" . font-lock-comment-face)
(" !.*$" . font-lock-comment-face)
("( .* )" . font-lock-comment-face)
"MAIN:"
"IN:" "USING:" "TUPLE:" "^C:" "^M:" "USE:" "REQUIRE:" "PROVIDE:"
"REQUIRES:"
"GENERIC:" "GENERIC#" "SYMBOL:" "PREDICATE:" "VAR:" "VARS:"
"C-STRUCT:"
"C-UNION:" "<PRIVATE" "PRIVATE>" "MACRO:" "MACRO::" "DEFER:" "TYPEDEF:"))

(defun factor-mode ()
"A mode for editing programs written in the Factor programming language."
(interactive)
(kill-all-local-variables)
(use-local-map factor-mode-map)
(setq major-mode 'factor-mode)
(setq mode-name "Factor")
(make-local-variable 'comment-start)
(setq comment-start "! ")
(make-local-variable 'font-lock-defaults)
(setq font-lock-defaults
'(factor-font-lock-keywords nil nil nil nil))
(set-syntax-table factor-mode-syntax-table)
(run-hooks 'factor-mode-hooks))

(add-to-list 'auto-mode-alist '("\\.factor\\'" . factor-mode))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(require 'comint)

(defvar factor-binary "/scratch/repos/Factor/factor")
(defvar factor-image "/scratch/repos/Factor/factor.image")

(defun factor-telnet-to-port (port)
(interactive "nPort: ")
(switch-to-buffer
(make-comint-in-buffer "factor-telnet" nil (cons "localhost" port))))

(defun factor-telnet ()
(interactive)
(factor-telnet-to-port 9000))

(defun factor-telnet-factory ()
(interactive)
(factor-telnet-to-port 9010))

(defun factor-run-file ()
(interactive)
(comint-send-string "*factor*" (format "\"%s\"" (buffer-file-name)))
(comint-send-string "*factor*" " run-file\n"))

(defun factor-send-region (start end)
(interactive "r")
(comint-send-region "*factor*" start end)
(comint-send-string "*factor*" "\n"))

(defun factor-see ()
(interactive)
(comint-send-string "*factor*" "\\ ")
(comint-send-string "*factor*" (thing-at-point 'sexp))
(comint-send-string "*factor*" " see\n"))

(defun factor-help ()
(interactive)
(comint-send-string "*factor*" "\\ ")
(comint-send-string "*factor*" (thing-at-point 'sexp))
(comint-send-string "*factor*" " help\n"))

(defun factor-edit ()
(interactive)
(comint-send-string "*factor*" "\\ ")
(comint-send-string "*factor*" (thing-at-point 'sexp))
(comint-send-string "*factor*" " edit\n"))

(defun factor-comment-line ()
(interactive)
(beginning-of-line)
(insert "! "))

(define-key factor-mode-map "\C-c\C-f" 'factor-run-file)
(define-key factor-mode-map "\C-c\C-r" 'factor-send-region)
(define-key factor-mode-map "\C-c\C-s" 'factor-see)
(define-key factor-mode-map "\C-ce" 'factor-edit)
(define-key factor-mode-map "\C-c\C-h" 'factor-help)
(define-key factor-mode-map "\C-cc" 'comment-region)
(define-key factor-mode-map [return] 'newline-and-indent)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; factor-listener-mode
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(define-derived-mode factor-listener-mode comint-mode "Factor Listener")

(define-key factor-listener-mode-map [f8] 'factor-refresh-all)

(defun run-factor ()
(interactive)
(switch-to-buffer
(make-comint-in-buffer "factor" nil factor-binary nil
(concat "-i=" factor-image)
"-run=listener"))
(factor-listener-mode))

(defun factor-refresh-all ()
(interactive)
(comint-send-string "*factor*" "refresh-all\n"))
\ No newline at end of file diff --git a/misc/macos-release.sh.html b/misc/macos-release.sh.html deleted file mode 100755 index 17091e7bb5..0000000000 --- a/misc/macos-release.sh.html +++ /dev/null @@ -1,64 +0,0 @@ -C:\cygwin\home\Slava\factor/misc/macos-release.sh
TARGET=$1

if [ "$TARGET" = "x86" ]; then
CPU="x86.32"
else
CPU="ppc"
fi

make macosx-$TARGET
Factor.app/Contents/MacOS/factor -i=boot.$CPU.image -no-user-init

VERSION=0.91
DISK_IMAGE_DIR=Factor-$VERSION
DISK_IMAGE=Factor-$VERSION-$TARGET.dmg

rm -f $DISK_IMAGE
rm -rf $DISK_IMAGE_DIR
mkdir $DISK_IMAGE_DIR
mkdir -p $DISK_IMAGE_DIR/Factor/
cp -R Factor.app $DISK_IMAGE_DIR/Factor/Factor.app
chmod +x cp_dir
cp factor.image license.txt README.txt $DISK_IMAGE_DIR/Factor/
find core extra fonts misc unmaintained -type f \
-exec ./cp_dir {} $DISK_IMAGE_DIR/Factor/{} \;
hdiutil create -srcfolder "$DISK_IMAGE_DIR" -fs HFS+ \
-volname "$DISK_IMAGE_DIR" "$DISK_IMAGE"
\ No newline at end of file From 530c05226ee2b54f50e967b2fbdb74a448d93c11 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Wed, 12 Dec 2007 18:35:46 -0500 Subject: [PATCH 04/10] Update release scripts --- misc/macos-release.sh | 12 ++++++++---- misc/source-release.sh | 4 ++++ misc/version.sh | 1 + misc/windows-release.sh | 3 ++- 4 files changed, 15 insertions(+), 5 deletions(-) create mode 100644 misc/source-release.sh create mode 100644 misc/version.sh diff --git a/misc/macos-release.sh b/misc/macos-release.sh index 6a25ba2012..4f62501a1b 100644 --- a/misc/macos-release.sh +++ b/misc/macos-release.sh @@ -1,15 +1,19 @@ +source misc/version.sh + TARGET=$1 if [ "$TARGET" = "x86" ]; then CPU="x86.32" else - CPU="ppc" + CPU="macosx-ppc" fi -make macosx-$TARGET -Factor.app/Contents/MacOS/factor -i=boot.$CPU.image -no-user-init +BOOT_IMAGE=boot.$CPU.image +wget http://factorcode.org/images/$VERSION/$BOOT_IMAGE + +make macosx-$TARGET +Factor.app/Contents/MacOS/factor -i=$BOOT_IMAGE -no-user-init -VERSION=0.91 DISK_IMAGE_DIR=Factor-$VERSION DISK_IMAGE=Factor-$VERSION-$TARGET.dmg diff --git a/misc/source-release.sh b/misc/source-release.sh new file mode 100644 index 0000000000..647bd49760 --- /dev/null +++ b/misc/source-release.sh @@ -0,0 +1,4 @@ +source misc/version.sh +rm -rf .git +cd .. +tar cfz Factor-$VERSION.tgz factor/ diff --git a/misc/version.sh b/misc/version.sh new file mode 100644 index 0000000000..0bc37f62df --- /dev/null +++ b/misc/version.sh @@ -0,0 +1 @@ +export VERSION=0.91 diff --git a/misc/windows-release.sh b/misc/windows-release.sh index a32292e16a..1f947ff3f4 100644 --- a/misc/windows-release.sh +++ b/misc/windows-release.sh @@ -1,5 +1,6 @@ +source misc/version.sh + CPU=$1 -VERSION=0.91 if [ "$CPU" = "x86" ]; then FLAGS="-no-sse2" From 3f22d61a0482bb5f6b60d0252e28598bbc5b0fba Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Wed, 12 Dec 2007 18:57:22 -0500 Subject: [PATCH 05/10] Update build scripts --- misc/macos-release.sh | 3 +++ misc/source-release.sh | 3 +++ 2 files changed, 6 insertions(+) diff --git a/misc/macos-release.sh b/misc/macos-release.sh index 4f62501a1b..57ac2b2255 100644 --- a/misc/macos-release.sh +++ b/misc/macos-release.sh @@ -28,3 +28,6 @@ find core extra fonts misc unmaintained -type f \ -exec ./cp_dir {} $DISK_IMAGE_DIR/Factor/{} \; hdiutil create -srcfolder "$DISK_IMAGE_DIR" -fs HFS+ \ -volname "$DISK_IMAGE_DIR" "$DISK_IMAGE" + +ssh mkdir -p linode:w/downloads/$VERSION/ +scp $DISK_IMAGE linode:w/downloads/$VERSION/ diff --git a/misc/source-release.sh b/misc/source-release.sh index 647bd49760..78a6fe2826 100644 --- a/misc/source-release.sh +++ b/misc/source-release.sh @@ -2,3 +2,6 @@ source misc/version.sh rm -rf .git cd .. tar cfz Factor-$VERSION.tgz factor/ + +ssh mkdir -p linode:w/downloads/$VERSION/ +scp Factor-$VERSION.tgz linode:w/downloads/$VERSION/ From 257736bd6aa167fb94f32052574f8074e793328c Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Thu, 13 Dec 2007 14:16:55 -0500 Subject: [PATCH 06/10] Update script again --- misc/macos-release.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/misc/macos-release.sh b/misc/macos-release.sh index 57ac2b2255..c265b8a80f 100644 --- a/misc/macos-release.sh +++ b/misc/macos-release.sh @@ -2,16 +2,18 @@ source misc/version.sh TARGET=$1 -if [ "$TARGET" = "x86" ]; then +if [ "$1" = "x86" ]; then CPU="x86.32" + TARGET=macosx-x86-32 else CPU="macosx-ppc" + TARGET=macosx-ppc fi BOOT_IMAGE=boot.$CPU.image wget http://factorcode.org/images/$VERSION/$BOOT_IMAGE -make macosx-$TARGET +make $TARGET Factor.app/Contents/MacOS/factor -i=$BOOT_IMAGE -no-user-init DISK_IMAGE_DIR=Factor-$VERSION From b2b1f2cfa8c2031441c8e6a7d5de2d535140e739 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Thu, 13 Dec 2007 14:21:04 -0500 Subject: [PATCH 07/10] Fix the script (again??) --- misc/macos-release.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/misc/macos-release.sh b/misc/macos-release.sh index c265b8a80f..3a080e0ae6 100644 --- a/misc/macos-release.sh +++ b/misc/macos-release.sh @@ -31,5 +31,5 @@ find core extra fonts misc unmaintained -type f \ hdiutil create -srcfolder "$DISK_IMAGE_DIR" -fs HFS+ \ -volname "$DISK_IMAGE_DIR" "$DISK_IMAGE" -ssh mkdir -p linode:w/downloads/$VERSION/ +ssh linode mkdir -p w/downloads/$VERSION/ scp $DISK_IMAGE linode:w/downloads/$VERSION/ From 9766faca6d45dfe3079ea944531748b664c0f509 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Thu, 13 Dec 2007 14:22:02 -0500 Subject: [PATCH 08/10] More script fixes --- misc/source-release.sh | 6 +++--- misc/windows-release.sh | 7 ++++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/misc/source-release.sh b/misc/source-release.sh index 78a6fe2826..37aa98e1e3 100644 --- a/misc/source-release.sh +++ b/misc/source-release.sh @@ -1,7 +1,7 @@ source misc/version.sh rm -rf .git cd .. -tar cfz Factor-$VERSION.tgz factor/ +tar cfz Factor-$VERSION.tar.gz factor/ -ssh mkdir -p linode:w/downloads/$VERSION/ -scp Factor-$VERSION.tgz linode:w/downloads/$VERSION/ +ssh linode mkdir -p w/downloads/$VERSION/ +scp Factor-$VERSION.tar.gz linode:w/downloads/$VERSION/ diff --git a/misc/windows-release.sh b/misc/windows-release.sh index 1f947ff3f4..91c5935f81 100644 --- a/misc/windows-release.sh +++ b/misc/windows-release.sh @@ -22,5 +22,10 @@ rm -f Makefile rm -f cp_dir rm -f boot.*.image +FILE=Factor-$VERSION-win32-$CPU.zip + cd .. -zip -r Factor-$VERSION-win32-$CPU.zip Factor/ +zip -r $FILE Factor/ + +ssh linode mkdir -p w/downloads/$VERSION/ +scp $FILE linode:w/downloads/$VERSION/ From fda9958ab40de4e397d26f71c1e3e6e75e94cf5c Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Thu, 13 Dec 2007 15:15:54 -0500 Subject: [PATCH 09/10] Starting 0.92 --- core/kernel/kernel.factor | 2 +- misc/version.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/core/kernel/kernel.factor b/core/kernel/kernel.factor index 88ca0a64f7..6fe0a9588c 100644 --- a/core/kernel/kernel.factor +++ b/core/kernel/kernel.factor @@ -3,7 +3,7 @@ USING: kernel.private ; IN: kernel -: version ( -- str ) "0.91" ; foldable +: version ( -- str ) "0.92" ; foldable ! Stack stuff : roll ( x y z t -- y z t x ) >r rot r> swap ; inline diff --git a/misc/version.sh b/misc/version.sh index 0bc37f62df..9c5d02d463 100644 --- a/misc/version.sh +++ b/misc/version.sh @@ -1 +1 @@ -export VERSION=0.91 +export VERSION=0.92 From 114ee74041d20aa7b9ccdb57a4b8f8023119392d Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Thu, 13 Dec 2007 16:34:36 -0500 Subject: [PATCH 10/10] Fix one-word-elt --- extra/documents/documents.factor | 4 ++-- extra/springies/models/2x2snake/deploy.factor | 13 +++++++++++++ extra/ui/gadgets/editors/editors-tests.factor | 10 ++++++++++ extra/ui/gadgets/editors/editors.factor | 10 +++++----- 4 files changed, 30 insertions(+), 7 deletions(-) create mode 100644 extra/springies/models/2x2snake/deploy.factor diff --git a/extra/documents/documents.factor b/extra/documents/documents.factor index 01034e0e3f..97433d247f 100755 --- a/extra/documents/documents.factor +++ b/extra/documents/documents.factor @@ -195,11 +195,11 @@ TUPLE: one-word-elt ; M: one-word-elt prev-elt drop - [ [ f -rot >r 1- r> (prev-word) ] (word-elt) ] (prev-char) ; + [ f -rot >r 1- r> (prev-word) ] (word-elt) ; M: one-word-elt next-elt drop - [ [ f -rot (next-word) ] (word-elt) ] (next-char) ; + [ f -rot (next-word) ] (word-elt) ; TUPLE: word-elt ; diff --git a/extra/springies/models/2x2snake/deploy.factor b/extra/springies/models/2x2snake/deploy.factor new file mode 100644 index 0000000000..1ad6cfe172 --- /dev/null +++ b/extra/springies/models/2x2snake/deploy.factor @@ -0,0 +1,13 @@ +USING: tools.deploy.config ; +H{ + { deploy-compiler? t } + { deploy-word-props? f } + { deploy-ui? t } + { deploy-reflection 1 } + { deploy-name "springies.models.2x2snake" } + { deploy-c-types? f } + { deploy-word-defs? f } + { "stop-after-last-window?" t } + { deploy-math? t } + { deploy-io 1 } +} diff --git a/extra/ui/gadgets/editors/editors-tests.factor b/extra/ui/gadgets/editors/editors-tests.factor index 6be0423e95..cbccb37111 100755 --- a/extra/ui/gadgets/editors/editors-tests.factor +++ b/extra/ui/gadgets/editors/editors-tests.factor @@ -30,6 +30,16 @@ tools.test.inference tools.test.ui models ; ] with-grafted-gadget ] unit-test +[ "bar" ] [ + "editor" set + "editor" get [ + "bar\nbaz quux" "editor" get set-editor-string + { 0 3 } "editor" get editor-caret set-model + "editor" get select-word + "editor" get gadget-selection + ] with-grafted-gadget +] unit-test + { 0 1 } [ ] unit-test-effect "hello" "field" set diff --git a/extra/ui/gadgets/editors/editors.factor b/extra/ui/gadgets/editors/editors.factor index 84cc01cdb6..eb1d5daf26 100755 --- a/extra/ui/gadgets/editors/editors.factor +++ b/extra/ui/gadgets/editors/editors.factor @@ -320,11 +320,6 @@ M: editor gadget-text* editor-string % ; : end-of-document ( editor -- ) T{ doc-elt } editor-next ; -: selected-word ( editor -- string ) - dup gadget-selection? [ - dup T{ one-word-elt } select-elt - ] unless gadget-selection ; - : position-caret ( editor -- ) mouse-elt dup T{ one-char-elt } = [ drop dup extend-selection dup editor-mark click-loc ] @@ -408,6 +403,11 @@ editor "caret-motion" f { : select-word T{ one-word-elt } select-elt ; +: selected-word ( editor -- string ) + dup gadget-selection? + [ dup select-word ] unless + gadget-selection ; + : select-previous-character T{ char-elt } editor-select-prev ; : select-next-character T{ char-elt } editor-select-next ;