[Home] [Downloads] [Search] [Help/forum]


Register forum user name Search FAQ

Gammon Forum

[Folder]  Entire forum
-> [Folder]  MUSHclient
. -> [Folder]  General
. . -> [Subject]  MUSHclient source being made available on GitHub

MUSHclient source being made available on GitHub

It is now over 60 days since the last post. This thread is closed.     [Refresh] Refresh page


Pages: 1  2 3  

Posted by Nick Gammon   Australia  (22,973 posts)  [Biography] bio   Forum Administrator
Date Reply #15 on Fri 22 Jan 2010 03:19 AM (UTC)

Amended on Fri 22 Jan 2010 03:20 AM (UTC) by Nick Gammon

Message
Some pages on GitHub are showing as blank, for example:

http://github.com/nickgammon/mushclient/blob/master/Dmetaph.cpp

If you select the "raw" option you can see the text OK.

I strongly suspect this is to do with characters on the page with the high-order bit set (some other pages with the copyright symbol on them did it, before I got rid of it).

I suspect that GitHub is trying to interpret the page as UTF-8, and failing, but why? Does anyone know enough about Git to tell me how to stop it doing that? Eg. to tell it that pages are iso-8859 rather than UTF-8? Or is it just a bug?

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #16 on Fri 22 Jan 2010 03:28 AM (UTC)
Message
Git itself should be encoding-agnostic according to the documentation I've seen, so it's probably GitHub that's at fault. However, it does seem that utf8 is the preferred/standard web encoding.

This ticket seems to show the same issue, but I can't tell what they did exactly to fix it. [1]

[1]: http://support.github.com/discussions/site/1129-blank-source-view-for-sql-file

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by Nick Gammon   Australia  (22,973 posts)  [Biography] bio   Forum Administrator
Date Reply #17 on Fri 22 Jan 2010 04:04 AM (UTC)

Amended on Fri 22 Jan 2010 04:40 AM (UTC) by Nick Gammon

Message
Yes, well in the case in question it was doing something like:


switch (blah)
  {
  case 'X' : blah
  }


... where X was something like a C with a cedilla. Now, I can't make that utf-8 as it is in C where I am trying to match a single byte (not a UTF-8 sequence).

However a quick search revealed only a small number of these cases, so I recoded like this:


switch (blah)
  {
  case '\xC7' : blah
  }


That still works programmatically, and should display OK.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #18 on Fri 22 Jan 2010 04:13 AM (UTC)
Message
Ahh, that makes a lot of sense. *nod*

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by Nick Gammon   Australia  (22,973 posts)  [Biography] bio   Forum Administrator
Date Reply #19 on Sat 23 Jan 2010 08:08 PM (UTC)
Message
Displaying commit logs

Once a new release has appeared you can show the commit log, like this:


$ git log --pretty=oneline --reverse v4.45..v4.46

248df7579b22bbb444453d47529d03b169e5bef2 Added flags to matching in wait.lua
218d75b45ed72085d7ea41236378d098b8d8e5ab Updated version number to 4.46
29a1228ffbad95c2c305cef2560e9a777dadfbb6 Put back stuff I accidentally took out
038e366fc6a81ad2595de5c727686feeae5f063c Added PPI module
efbb9d35ffcd5c20e4ef0077844c6b8c6ad8c6ad Allow empty text documents to be marked read-only
447dc727ced0d2f02464197fc2b29f9baa9a0060 Stuff for having hotspots outside plugins
4016d779a76193026b214f0dfaf5cf82b102c58a documentation improvements
adde6adb0ff1a413afec0155b6dfc1f21ef126dc Stuff for having hotspots outside plugins
49a77b31fa20252d463a510a10b950ccb4477ff8 Added WindowGradient to list of known functions
b0e2a46db1773e111d18ee085bfa6418b570131d Fixed loop in Linux on disconnect
ff995fbb3628dd3da41b96e435806425864c9939 Documentation generation files
4f4fb446ecd7865db740e172c0a0f03d5b96a43f Final changes before release
b020fc56b0904a6c60002874fca54532c36e0592 ignore file for docgen directory
fc0ec85769e076e8b1a2b1d44a96ef2a146bc065 Added help work file


Notice the "version tag" range at the end of the command (v4.45..v4.46). Also the --reverse option shows the commits in date order, the default is the most recent commit first.

You can also see what files were affected in the version release by doing a diff, like this:


$ git diff --stat v4.45..v4.46

 .gitignore                     |    5 +
 MUSHclient.dsp                 |    6 +-
 MUSHclient.opt                 |  Bin 54784 -> 59904 bytes
 MUSHclient.rc                  |    8 +-
 OtherTypes.h                   |   27 +-
 TextDocument.cpp               |    6 +-
 dialogs/plugins/PluginsDlg.cpp |   32 +-
 doc.cpp                        |   69 +++-
 doc.h                          |   11 +-
 docgen/.gitignore              |    2 +
 docgen/help.hpj                |   19 +
 install/mushclient.nsi         |    2 +
 install/readme.txt             |    4 +-
 lua/ppi.lua                    |  170 ++++++
 lua/wait.lua                   |   33 +-
 miniwindow.cpp                 |   40 ++-
 mushview.cpp                   | 1207 +++++++++++++++++++++-------------------
 mushview.h                     |    6 +-
 readme.txt                     |    1 +
 scripting/functionlist.cpp     |    1 +
 scripting/methods.cpp          |   39 +-
 worldsock.cpp                  |    2 -
 22 files changed, 1061 insertions(+), 629 deletions(-)


This gives the actual file names that have changed, so you know which ones to investigate further (eg. by doing a diff on them).

Another way of looking at the change log is to generate the names of changed files per commit, like this:


$ git log --pretty=oneline --name-status --reverse v4.45..v4.46

248df7579b22bbb444453d47529d03b169e5bef2 Added flags to matching in wait.lua
M       lua/wait.lua
218d75b45ed72085d7ea41236378d098b8d8e5ab Updated version number to 4.46
M       MUSHclient.rc
M       doc.h
M       install/readme.txt
29a1228ffbad95c2c305cef2560e9a777dadfbb6 Put back stuff I accidentally took out
M       doc.h
038e366fc6a81ad2595de5c727686feeae5f063c Added PPI module
M       install/mushclient.nsi
A       lua/ppi.lua
efbb9d35ffcd5c20e4ef0077844c6b8c6ad8c6ad Allow empty text documents to be marked read-only
M       TextDocument.cpp
447dc727ced0d2f02464197fc2b29f9baa9a0060 Stuff for having hotspots outside plugins
M       OtherTypes.h
M       doc.cpp
M       miniwindow.cpp
M       mushview.cpp
M       mushview.h
M       scripting/methods.cpp
4016d779a76193026b214f0dfaf5cf82b102c58a documentation improvements
M       .gitignore
M       readme.txt
adde6adb0ff1a413afec0155b6dfc1f21ef126dc Stuff for having hotspots outside plugins
M       dialogs/plugins/PluginsDlg.cpp
49a77b31fa20252d463a510a10b950ccb4477ff8 Added WindowGradient to list of known functions
M       scripting/functionlist.cpp
b0e2a46db1773e111d18ee085bfa6418b570131d Fixed loop in Linux on disconnect
M       worldsock.cpp
ff995fbb3628dd3da41b96e435806425864c9939 Documentation generation files
A       docgen/help.hpj
4f4fb446ecd7865db740e172c0a0f03d5b96a43f Final changes before release
M       MUSHclient.dsp
M       MUSHclient.opt
M       install/readme.txt
M       scripting/functionlist.cpp
b020fc56b0904a6c60002874fca54532c36e0592 ignore file for docgen directory
A       docgen/.gitignore
fc0ec85769e076e8b1a2b1d44a96ef2a146bc065 Added help work file
M       .gitignore


Now you can see for each individual commit (change) which files were affected.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #20 on Sat 13 Feb 2010 09:49 PM (UTC)
Message
Hullos. Could I ask why in particular the Github repository source requires you to download the other libraries separately? That is, is there a license issue or something? I ask because it's somewhat annoying and error-prone to download the file and make the changes required to fit it to the MUSHclient source. If there was some way to put the external libraries source in the repository as well, it would also guarantee that those who download the source will have exactly the library versions required.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by Nick Gammon   Australia  (22,973 posts)  [Biography] bio   Forum Administrator
Date Reply #21 on Sat 13 Feb 2010 10:18 PM (UTC)

Amended on Sat 13 Feb 2010 10:19 PM (UTC) by Nick Gammon

Message
Well it seems like duplication, and also they aren't really my libraries. I admit I did it for the fairly small lsqlite library, but that is only one file, 56 Kb in size.

Other ones like Sqlite3 are over 1 Mb, and lots of files. PCRE library: 5 Mb. PNG library: 3 Mb.

The instructions are pretty straightforward - I followed them myself for the last build. And once you have the libraries you don't really need to re-get them for every build.

As an example of what other people do, in the instructions for the PNG library they say:


Before installing libpng, you must first install zlib, if it is not already on your system. zlib can usually be found wherever you got libpng. zlib can be placed in another directory, at the same level as libpng.


So if it is good enough for the PNG developers to require you to go to the extra effort of getting dependent libraries, I think it is good enough for MUSHclient.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #22 on Sat 13 Feb 2010 10:28 PM (UTC)
Message
Fair enough, thanks for the reply. By the way, though, in the last commit I pulled down, I had to modify all of the dialog/scripting files to look one directory higher for the other files they were including. Actually, I may have just added to the project's path for that, I can't remember... I'm going to redownload and compile later anyways, so I'll let you know what all I had to do to get it working.

I do remember that I had to install the DirectX SDK and add its paths to Visual Studio, so you may want to include that as one of the required steps. If I recall, it was for an #include "dsound.h".

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by Nick Gammon   Australia  (22,973 posts)  [Biography] bio   Forum Administrator
Date Reply #23 on Sat 13 Feb 2010 10:37 PM (UTC)
Message
I see I have as one of my default directories:


C:\SOURCE\MUSHCLIENT


That probably accounts for why mine compiles and yours doesn't. I'll see what happens if I remove it.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Nick Gammon   Australia  (22,973 posts)  [Biography] bio   Forum Administrator
Date Reply #24 on Sat 13 Feb 2010 11:14 PM (UTC)
Message
OK, after lengthy changes, you don't need to put the MUSHclient directory in as a default include path. Now every file works up or down from where it should.

[commit d200f54]

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Nick Gammon   Australia  (22,973 posts)  [Biography] bio   Forum Administrator
Date Reply #25 on Sat 13 Feb 2010 11:15 PM (UTC)
Message
Twisol said:

I do remember that I had to install the DirectX SDK and add its paths to Visual Studio, so you may want to include that as one of the required steps. If I recall, it was for an #include "dsound.h".


I don't think I have a list of required steps for the whole thing. But your point is taken, it is easy to forget you installed this stuff.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #26 on Sun 14 Feb 2010 09:14 AM (UTC)

Amended on Sun 14 Feb 2010 09:30 AM (UTC) by Twisol

Message
Alright, I got the source and set it up from scratch. It was fairly easy this time around, and I pushed the fixes I made upstream. I sent you a push request on GitHub, so you can grab my changes and see if it still under VC6.

EDIT: I also just edited your wiki page to include a brief set of steps to follow in order to build the source.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by Nick Gammon   Australia  (22,973 posts)  [Biography] bio   Forum Administrator
Date Reply #27 on Sun 14 Feb 2010 07:52 PM (UTC)
Message
Thanks for the Wiki stuff.

Your changes are now pushed out to the main repository.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Onoitsu2   USA  (248 posts)  [Biography] bio
Date Reply #28 on Mon 15 Feb 2010 02:08 AM (UTC)
Message
Since the dsound was mentioned recently, I figured I'd add in that MUSHclient works in "MiniXP" from Hiren's Boot CD, IF you bring a copy of the dsound.dll (windows\system32) and place into the mushclient folder.

Was working on someone's computer, and was waiting for a scan to complete (faster and cleaner to scan from within an OS booted "externally" to the issues) and wanted to pass the time somehow, and figured I'd go on an play a little. Thankfully the system I was working on had XP installed on it, so it was a cinch to get.

Just some random thought on the things being mentioned in this thread.

-Onoitsu2
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #29 on Thu 18 Feb 2010 05:08 AM (UTC)
Message
Brief comment, it would be great to have the resources project up as well. I'd love to tinker with some of the dialogs.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


114,811 views.

This is page 2, subject is 3 pages long:  [Previous page]  1  2 3  [Next page]

It is now over 60 days since the last post. This thread is closed.     [Refresh] Refresh page

Go to topic:           Search the forum


[Go to top] top

Quick links: MUSHclient. MUSHclient help. Forum shortcuts. Posting templates. Lua modules. Lua documentation.

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.

[Home]


Written by Nick Gammon - 5K   profile for Nick Gammon on Stack Exchange, a network of free, community-driven Q&A sites   Marriage equality

Comments to: Gammon Software support
[RH click to get RSS URL] Forum RSS feed ( https://gammon.com.au/rss/forum.xml )

[Best viewed with any browser - 2K]    [Hosted at HostDash]