From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: [PATCH] elpa/packages/sokoban/sokoban.el Date: Tue, 25 Jul 2017 10:24:30 -0400 Message-ID: References: <87tw20hhp1.fsf@deyke2> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1500992758 3076 195.159.176.226 (25 Jul 2017 14:25:58 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 25 Jul 2017 14:25:58 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jul 25 16:25:54 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1da0mW-0000Tx-PD for ged-emacs-devel@m.gmane.org; Tue, 25 Jul 2017 16:25:52 +0200 Original-Received: from localhost ([::1]:32866 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1da0ma-0002sI-Nh for ged-emacs-devel@m.gmane.org; Tue, 25 Jul 2017 10:25:56 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59378) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1da0lx-0002s9-75 for emacs-devel@gnu.org; Tue, 25 Jul 2017 10:25:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1da0lu-00010F-1H for emacs-devel@gnu.org; Tue, 25 Jul 2017 10:25:17 -0400 Original-Received: from [195.159.176.226] (port=39554 helo=blaine.gmane.org) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1da0lt-0000zK-Qk for emacs-devel@gnu.org; Tue, 25 Jul 2017 10:25:13 -0400 Original-Received: from list by blaine.gmane.org with local (Exim 4.84_2) (envelope-from ) id 1da0ll-0006Wf-Co for emacs-devel@gnu.org; Tue, 25 Jul 2017 16:25:05 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 33 Original-X-Complaints-To: usenet@blaine.gmane.org Cancel-Lock: sha1:kVgLVwIY5zjaUpH7zCgWYeYX9YI= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 195.159.176.226 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:217024 Archived-At: > + (with-temp-buffer > + (insert-file-contents sokoban-level-file) > + (goto-char (point-min)) > + (if (looking-at "<\\?xml version=") > + (let ((n 0) (tree (xml-parse-region))) > + (erase-buffer) > + (dolist (SokobanLevels tree) > + (dolist (LevelCollection (xml-get-children SokobanLevels 'LevelCollection)) > + (dolist (Level (xml-get-children LevelCollection 'Level)) > + (incf n) > + (insert (format ";LEVEL %d\n" n)) > + (dolist (L (xml-get-children Level 'L)) > + (insert (car (xml-node-children L))) > + (insert "\n"))))))) Why not put this code in its own function? > @@ -884,8 +896,8 @@ sokoban-mode keybindings: > '("Sokoban Commands" > ["Restart this level" sokoban-restart-level] > ["Start new game" sokoban-start-game] > - ["Go to specific level" sokoban-goto-level]))) > - > + ["Go to specific level" sokoban-goto-level] > + ["Fit frame to buffer" fit-frame-to-buffer]))) I doubt the current sokoban.el works in XEmacs, so I'd get rid of the XEmacs-specific code. Other than that, looks very good, Stefan