Jump to content
Muxe Inc Forums

Basil/2

Members
  • Content count

    97
  • Joined

  • Last visited

Posts posted by Basil/2


  1. Basil OS/2, I have already reported this bug some time ago at http://forums.muxe.com/index.php?showtopic=520

    Yes, I see; I had seen forum before posting bug but not so ago.

    Strange, but we find the same bugs very often! (like previous with last ftp char)

     

    NEW BUG to that topic:

     

    After FTP panel reread (no matter by Ctrl-R or auto), cursor jumps to the next file with same name.

    For instance, if the cursor is on 'RequestSendNotification.c', it will jump to 'RequestSendNotification.o'.

     

     

    P.S. Just Basil/2, but you are right about the OS :).


  2. How to reproduce:

     

    1. Open FTP at left panel.

    2. Open disk directory at right one.

    3. Select any FTP file.

    4. Press F5 (copying starts).

    5. During copying, press Enter (i.e. stop button).

     

    As the result, NDN will not be able to act with FTP until its restart.

    NDN 5814, Win32 on WinXP SP2.


  3. I guess, it's enough just to have a setting like "default code page" in FTP Host Options; exactly as in editor settings dialog.

    ASA i find a testserver i will be able to do it

    I am fraid it's quite difficult - most FTP-servers with russian characters are LOCAL servers (in home LAN's, like mine), you cannot access them without being in LAN. The second problem is: can you understand Russian? Can you detect, is current text coding good or bad? I do hope you can and you'll find an appropriate server.

     

    But now, I have a some solution in mind. AFAIK, single FTP session has two connections: control stream and data stream. I guess, if you will convert control stream using build-in codepages, it solves the problem. Certainly, I can test in on my own PC.

     

    Why am I so interesting of FTP? I use Reget to download FTP-files (I have district-LAN), but I use FAR to browse local (LAN) FTPs and search files. If NDN allows to browse FTP in several codepages, I can hold FAR for only one purpose that NDN can't achive: to change NDN's versions! ;)


  4. - Showing executing FTP-commands is very useful.

    hm, doesn't it already show them?

    Yes, and it is useful! :)

     

    the FTP itself doesn't offer any codepage facilities

    we have to detect the codepage ourselves

    i need some test server and a example of how the text/directory must look like

    I guess, it's enough just to have a setting like "default code page" in FTP Host Options; exactly as in editor settings dialog.


  5. Well, FTP in NDN will be a nice feature, I sense it! :)

     

    But now, I have some words about it's current implementaion, ok? There are several minor and one major notes. The minor ones are:

     

    - It's very unusual to copy file by single F5, not F5 then Enter.

    - What happends if login or password have '@' symbol?

    - Showing executing FTP-commands is very useful.

     

    The major comment is more difficult. As typical Internet subsystem, FTP may have SEVERAL CODEPAGES. Certainly, I mean there a Russian one. What exactly should be implemented? To show FTPs normal, NDN should convert any messages and FILENAMES, using according codepage.

    Fortunatelly, NDN has ALREADY have russian KOI and WIN translation tables, so you do not need to implement this. I think - and hope - it's enough to apply standart codepage conversion (like in viewer by F8) to FTPs messages and filenames.

     

    Wbr, Basil Starostin.


  6. hi!

     

    can you give me a more detailed description?

     

    Stefan / AH

    Mmm... What do you exactly want to know? I'll try; there is some information:

     

    1. M: is a network mapped drive, Microsoft network.

    2. I opened a file on it.

    3. File opened successfully, I pressed Ctrl-PgDn to look at its end.

    4. NDN crashed.

     

    On remote computer - this file owner - file is not closed and always being writting.

    This is a very large file (over 100 Mb), and its size is permanently growing.

     

    Anything else?

     

     

    P.S. A minor bug: When codepage autodetection failed (for example, no russian chars at all), NDN shows file in DOS-codepage instead of default codepage. (Creating file by Shift-F4 works perfectly.)


  7. Windows 2000 SP4 Rus.

    This happends when viewing file on remote machine (under writing).

     

    ───-<22-03-2005 17:50:24>
    VER :Necromancer's Dos Navigator WIN32 mode
    ADD :v2.15.1929 (12-03-2005)
    ERR :D9h (217)
    ADDR:00413204
    MSG :Unhandled exception
    OSD :16 (80x25)
    SYS :WinNT
    FILE:E:\NDN\SOURCE\dnini.pas(570)
    MEM :FFFF500FB6C3408A80E0D2520050E811 (at CS:IP)
    CS  :001B
    DS  :0023
    SS  :0023
    SP  :C4F8
    MEMm:29eb9000
    MEMa:29ededf0
    ┌──2────────────────── View - M:\log\TServer\srvl0322.log ─────────────────────┐
    │17:49:47.150 pktrecv 1854 00000F5C,PNG,20b,'S',213.87.61.134:5000.            │
    │17:49:47.150 acksent 1854 00000F5C,20b,213.87.61.134:5000.                    │
    │17:49:47.150 PING 1854.                                                       │
    │17:49:47.166 sockevent UDP.                                                   │
    │17:49:47.166 pktrecv 1439 00059C25,REQ,100b,'B',217.118.66.232:13692.         │
    │17:49:47.166 acksent 1439 00059C25,20b,217.118.66.232:13692.                  │
    │17:49:47.166 FILEWRITE 1439 <4393236R.439>.                                   │
    │17:49:47.228 sockevent UDP.                                                   │
    │17:49:47.228 pktrecv 1134 01EB0534,ACK,20b,'L',217.118.66.232:13457.          │
    │17:49:47.228 ACKRECV 1134 01EB0534,860ms.                                     │
    │17:49:47.260 ffcnevent.                                                       │
    │17:49:47.260 pktsent 1656 01EB053C,REQ,84b,'L',10.128.79.230:5000.            │
    │17:49:47.260 FILEQUEUE 1656 <6561446R.656>.                                   │
    │17:49:47.260 ffcnevent.                                                       │
    │17:49:47.260 ffcnevent.                                                       │
    │17:49:47.260 pktsent 1606 01EB053D,REQ,92b,'L',213.87.14.121:5000.            │
    │17:49:47.260 FILEQUEUE 1606 <6065529R.606>.                                   │
    │17:49:47.260 ffcnevent.                                                       │
    │17:49:47.322 sockevent UDP.                                                   │
    │17:49:47.322 pktrecv 1269 000287AC,PNG,20b,'B',217.118.66.232:13643.          │
    │17:49:47.322 acksent 1269 000287AC,20b,217.118.66.232:13643.                  │
    │17:                                                                           │
    └───────────────────────────────────────────────────────────────────── 17:50:23 
    1Help   2Menu   3View   4Edit   5Copy   6MovRen 7MkDir  8Delete 9NexWin10Menu  


  8. Where, i can download last version of pkunzip, where default NDN's keys-config is it (i shall dont change keys top pkunzip)?

    I use pkzip 2.5 in NDN:

     

    Packer  PKZIP25.EXE              Unpacker  PKZIP25.EXE                
                                                                          
    Extract files        -ext                     
    Extract w/pathnames  -ext -directories        
    Add files            -add                     
    Move files           -m                       
    Delete files         -delete                  
    Test files           -t                       
    Force mode                                    
    Include paths        -directories                                      
    Exclude paths        -p                       List char   @            
    Password             -s                       [X] Use long file names  
    Recovery record                                                        
    Self-extracting                                                        
    Solid                                                                  
    
    Compression type:       
    Normal  
    Good     
    Maximum                  


  9. ───-< 8-02-2005 11:19:16>
    VER :Necromancer's Dos Navigator WIN32 mode
    ADD :v2.15.1159 (04-02-2005)
    ERR :D8h (216)
    ADDR:00430ada
    MSG :Access violation
    OSD :16 (80x25)
    SYS :WinNT
    FILE:E:\NDN\SOURCE\Microed\microed4.pas(184)
    CS  :001B
    DS  :0023
    SS  :0023
    SP  :CD74
    MEMm:29f97000
    MEMa:29fb8c20
    ╔═[2]═════════════════ Edit - D:\Work\MCH3\transport.cpp ══════════════════[]═╗
    ║  File  Edit  Search  Paragraph  Block  Misc  Options                         
    ║       }                                                                      ▒
    ║       else // ACK                                                            ▒
    ║       {                                                                      ▒
    ║          PacketsContainer::iterator I;                                       ▒
    ║          I = QueuedPackets.find(P);                                          ▒
    ║          bool PktForAckFound = (I != QueuedPackets.end());                   ▒
    ║          if (PktForAckFound)                                                 ▒
    ║          {                                                                   ▒
    ║             format Frm("ACK %1%,%2%ms");                                     ■
    ║             Frm % (*I)->HeaderInfo() % (GetTickCount() - (*I)->CreateTime)); ▒
    ║             QueuedPackets.erase(I);                                          ▒
    ║          }                                                                   ▒
    ║          else                                                                ▒
    ║             logMain.Add(PR_HI, "unknAck " + P->HeaderInfo());                ▒
    ║                                                                              ▒
    ║          return; // ACKs do NOT processed anyway                             ▒
    ║       }                                                                      ▒
    ║                                                                              ▒
    ║       // Ãðîâåðêà äóáëèðîâàíèÿ                                               ▒
    ║       // (PktID.ClientID âñåãäà îäèí è òîò æå, ïîñåìó åãî èãíîðèðóåì)        ▒
    ║       bool Duplicated = Cln->DuplicateCheck(P->Header()->PktId.Number);      
    ╚══<12·······>═WIN═[041·29]═CrLf═()═76:124/297══════■▒▒▒▒▒▒▒▒▒▒▒▒▒▒ 11:19:16 
    1Help   2Save   3Open   4DrwLin 5Block  6Dupe   7Search 8Encode 9NexWin10Menu  


  10. Good, the situation becomes better and better.

     

    Looks like that bugs I reported with Search-Cancel and Default-Codepage are fixed. Panel scrolling works like windows one. What about some features now?

     

    These features are not vital but I guess they are simple enough to realize:

     

    1. When NDN (both editor/viewer) did not found searching text, it shows

    ------------------------------

    Search string not found

    ------------------------------

     

    May be, it would be better to add SEARCH CONDITIONS to this "show", like that:

     

    ------------------------------

    Search string not found

     

    (Selected text, forward, from cursor)

    (Case sensitive, whole words)

    ------------------------------

     

    Very offen, I fail my search just because I forgot change 'backward' to 'forward' or use 'case-sensitivity' option from previous search. :( I guess, this will be useful - to add 2 strings with options to know search conditions when it fails.

     

    2. Current Ctrl-BackSpace realization is good enough, but there is some way to improve it slightly. I guess, Ctrl-BkSp should ack like CTRL-LEFT. I mean, if by Ctrl-Left cursor jumps to the certain position, Ctrl-BkSp should delete characters up to the SAME position. Despite my being programmer, I guess the good example of Ctrl-Backspace is Microsoft Word.

     

    If this feature is hard to realize, a very simple behaviour can be used instead:

    in case "word_1", where '_' is a space, and '1' is cursor position, Ctrl-BkSp should delete the word + space "word_". (now, NDN deletes only space, but Ctrl-BkSp must(?) delete words, I think)


  11. About "unit-tests" (and "regression" tests, and NDN).

     

    This is a relatively modern way to test your programs, or rather, your procuderes and functions. The main thing of this is: write tests for your functions before writing these functions (or immediately after). Example:

    assume that you plan to write function Square(). Before this, you write tests (in C):

    ------

    ; TestEquals(p1,p2,p3) - procedure which compares p1 and p2 and prints "error: p3" if they are different.

     

    ; Common cases

    TestEquals(Square(2), 4, "test1");

    TestEquals(Square(3), 9, "test2");

     

    ; Border cases

    TestEquals(Square(0), 0, "test3");

    TestEquals(Square(MAX_INT), 0, "test4"); // there may be overflow - depends on compiler

    TestEquals(Square(-3), 9, "test5");

    ------

    Than, you compile these tests. Certainly, all of them will fail if Square() is empty. And your task is to write such Square(), that completely PASSED ALL TESTS. If you have good and full tests, it means you created a good function indeed.

     

    After writing tests, you combine their to packages, and than combine packeges to a test program. If even one test in package fails, whole package is failed. If even any package fails, the entire test program is failed.

     

    During development, you sometimes (and always - before release) launch this test program to make sure all your procedures and units are correct. This is very useful, if you corrupt the old code during adding features or fixing. This corrupted code unit-tests will fail, so you can detect that you just now "added some bugs" to program instead of fixing it.

    If some user told you about any bug, you write test (or tests) which detects this bug, and then make your program to pass this test normally.

     

    The second benefit is reducing time you spend on testing, because tests are automatical.

     

    But, it's VERY difficult, to add unit-tests to program without them.

     

    For more information, you can see http://xprogramming.com/xpmag/whatisxp.htm#test

     

     

    Now, "Regression tests".

    The technology is simple:

    1. You launch your program; program make some results

    2. You check these results manually and save it to safe place

    3. Sometimes (and always - you already now when :) ) you launch your program and COMPARE it's result with saved, correct result.

     

     

    As for NDN?

    I offer the following. Any change or fix of editor easily adds some bugs to it or just change it's behaviour. If we made some regression tests for editor, we:

    - can make sure editor's behaviour is STABLE from beta to beta

    - describe errors in terms of tests

     

    How can it be implemented? NDN has a very good thing - HGL-file MACROS (Macro 1..9); and most editor bugs (or uncomfortable behaviours) AFFECT these macros! So you can create small program which receive 2 files:

    - one with macro-commands

    - second with text, on which these commands should be applyed

    As a result, program creates 3rd file with processing result.

     

    Then, we can use bat-file (or self-written program) to compare these result-files with hand-made correct files. If editor change it's behaviour, the program change result files (certainly, program use NDN sources for editor). I can make several test files for NDN-editor behaviour which is importanf for me.

     

     

    No doubt, it's VERY difficult too. Moreover, I am not sure that macros can COMPLETELY cover all editor's behaviour and features. But, I guess, one time implemented, it will be a great step in program stability and for you as a programmer.

     

    P.S. All I wrote is my opinion and it may be wrong.


  12. NDN 2.15.0000, Win 2000 SP4 Rus.

     

    1. Editor option "Default code page" doesn't work: I have it "WIN", but all files I create (by Shift-F4) creates in DOS codepage.

     

    2. Backward search (in viewer) can't be cancelled.

    (sorry for annoying with this, but I have to analyze large log files (over 100Mb) from end to start, so I have to kill NDN-process always if search string is not in file)

     

    3. Sometimes in editor, after pressing Enter, the cursor jumps to the next line at row-position not of the current line, but of the previous. Sorry, it sounds har to understand, there is an example:

     

    normal ('_' means space):

    ---------

    ___test

     

    my string1

    2

    ---------

     

    Being at 1, cursor jumps to 2 after Enter. It's correct. But sometimes, after enter

     

    wrong:

    ---------

    ___test

     

    my string1

    ___3

    ---------

     

    Cursor jumps to 3 - not to the start of line. And this behaviour, once happend, CONTINUES until file is editing.

    If I press Esc, and then F4, bug disappers fro some time.

     

     

    P.S. AH, what about some unit-tests for editor? I do understand it's very hard to make them for an editor; but this will be VERY useful in fighting against bugs, I guess.


  13. there is no way to solve it because it is no *bug*

    I know :(, I hope somebody meet that problem and solved it.

     

    The new information arrived:

     

    1. It's not only in NDN, DN OSP is affected too.

    2. It sometimes happends when I press F2 in editor; does files panel update after it?


  14. During several kinds of operations (Alt-F1/F2 change drive; F2 saving file in editor), NDN freezes 1..2 seconds (do nothing and don't react to keyboard).

     

    I am not sure it's NDN bug, but looks like to be so. I think it's related to drive access; I have several network drives (both Novell and Windows).

     

    What can it be and how can it be solved?


  15. it is the ORIGIN option

     

    if it is ENTIRE SCOPE then SELECTED TEXT seems to be ignored

     

    maybe you can try around with the options next time you find a bug to save me a lot of work ? :)

    Certainly!, I do need this to work correctly.

     

    "Scope" option helps, but not always. NDN demonstrates a very strange behaviour, see example 2:

     

    starostin.msk.ru/download/NDN/NDN_replace_bug2.gif

     

     

     

    P.S. Stefan, which editor do you use to edit NDN and other sources?


  16. 1. I think it's better to keep WordStar by default but add "Windows hotkeys [ ]" option, which gives

    NDN Windows editor's behaviour. However, it's a very large topic to discuss. For example, should Ctrl-Y works as "Redo" or as "Delete line"? Now I have not a solution for this: I want a very mixed keyset in NDN editor, and I can't imagine how to realize it.

    It's cheaper for me to use Ctrl-K,A instead of just Ctrl-A than to create special keyset. :)

     

    2. [Editor Defaults]

    Options=-104892374

    OptionsE=53

    FastSearchDeep=0

    CPOptions=1

    LMargin=0

    RMargin=78

    Paragraph=5

    TabSize=4

    NewLine=0

    AutoBrackets=()[]{}<>""''

     

    Example text:

    -----

    1. 222

    2. 333

    3. 222

    4. 333

    5. 222

    ------

    I select strings 2 and 3;

    opens "Replace" dialog by Ctrl-F7;

    search text is "333";

    all checkboxes are CLEAR,

    press "Change all".

    Result: both 2 and 4 strings are changed.

     

    If you could not reproduce this bug, I can post a small screen video when I doing that. ;)

     

    3. Ctrl+Wheel? Sorry, I think this ruin wheel feature because wheel means no keyboard, I suppose. Probably, as usual optional:

    ( ) move

    ( ) scroll

    ( ) pagescroll

    as example.

×