On Thursday, 13 November 2014 at 22:28:43 UTC, Israel wrote:
On Thursday, 13 November 2014 at 22:20:58 UTC, Casey wrote:
On Thursday, 13 November 2014 at 21:56:48 UTC, Casey wrote:
On Thursday, 13 November 2014 at 16:04:43 UTC, Adam D. Ruppe wrote:
On Thursday, 13 November 2014 at 07:01:08 UTC, Rikki Cattermole wrote:
I did find this [0]. I don't know what state its in for compilating/running ext. But it might give you a good starting point.

[0] https://github.com/pythoneer/XInputSimulator

ooh there's some nice code for Linux in there! The Windows is only half implemented though... but this combined with my Windows code should get you enough example to write a cross-platform thing if you need it.

Thank you so much! I really appreciate this! But I have a few questions.

1) Which compiler should I use? I'm attempting to use the DM D comiler, but afaik it doesn't have a GUI and I can't make any sense of how to use it otherwise. I'll look up a tutorial on it if this is the one you recommend. If it's not the one you recommend, I'll give yours a try.

2) I can't figure out what the heck half of this code means. It seems that at the bottom you have what each of the hotkey buttons are, and I can see a few times where you referenced them. I can also see a efw listeners for the keybinds to be pressed, and then where you use the writeln command. Other than that, I can't tell what's going on. I feel like a noob, sorry that I don't understand this.

3) I'm sure that everything you have in there has a meaning, but it looks over complicated to me. Shouldn't it look something like this?

[code]
void main() {
  import std.stdio;
  import simpledisplay;
  import *Others that need to be imported*;
  if (*hotkey command here*) {
  then writeln ("We're losing Alpha!")
  return 0;
}
[/code]

I know there's a /LOT/ more to it than that, but wouldn't that be the basics? I honestly don't know a whole lot about what you did, but at least I understand the basic concept of programming.

I'm going to start looking up a few tutorials on compiling using the DM D compiler, let me know if you recommend a different one.

Could you tell me which keys you used for the hotkey in your sample code? I can't figure it out, but my guess it alt + c?
 Not sure though.

Thanks again, I am really impressed with you for actually writing the basic concept of it for me! I can diffidently use this for my building block of learning how to program better!


Ok so I've found out how to compile using the DM D compiler via terminal... I can't cd to my directory for whatever reason... so I'm running this:

[code]
dmd D:\Documents\Other\Hotkeys\D\Keybinds.d
[/code]
But it's spitting out errors left and right. Here's what I get:


[code]
C:\Users\Casey>dmd D:\Documents\Other\Hotkeys\D\Keybinds.d
D:\Documents\Other\Hotkeys\D\Keybinds.d(11): Error: undefined identifier KEYEVEN
TF_UNICODE
D:\Documents\Other\Hotkeys\D\Keybinds.d(25): Error: module simpledisplay is in f
ile 'simpledisplay.d' which cannot be read
import path[0] = D:\Program Files (x86)\DM D Programming Language Compiler\D\dmd
2\windows\bin\..\..\src\phobos
import path[1] = D:\Program Files (x86)\DM D Programming Language Compiler\D\dmd
2\windows\bin\..\..\src\druntime\import

[/code]

It's basically telling me I need the two files you mentioned that are on your Github. So I then went and got your two files, copied their stuff into their own folders, and tried to compile them. Here's what I got:

[code]
C:\Users\Casey>dmd D:\Documents\Other\Hotkeys\D\simpledisplay.d
D:\Documents\Other\Hotkeys\D\simpledisplay.d(274): Error: module color is in fil
e 'arsd\color.d' which cannot be read
import path[0] = D:\Program Files (x86)\DM D Programming Language Compiler\D\dmd
2\windows\bin\..\..\src\phobos
import path[1] = D:\Program Files (x86)\DM D Programming Language Compiler\D\dmd
2\windows\bin\..\..\src\druntime\import


C:\Users\Casey>dmd D:\Documents\Other\Hotkeys\D\color.d
OPTLINK (R) for Win32  Release 8.00.15
Copyright (C) Digital Mars 1989-2013  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
OPTLINK : Warning 23: No Stack
color.obj(color)
Error 42: Symbol Undefined __fltused
color.obj(color)
Error 42: Symbol Undefined __d_arraybounds
color.obj(color)
Error 42: Symbol Undefined __memset80
color.obj(color)
Error 42: Symbol Undefined __d_assert
color.obj(color)
Error 42: Symbol Undefined __d_arraycatT
color.obj(color)
Error 42: Symbol Undefined __d_throwc
color.obj(color)
Error 42: Symbol Undefined _D6object9Exception6__ctorMFNaNbNfAyaAyakC6object9Th
rowableZC9Exception
color.obj(color)
Error 42: Symbol Undefined __d_newclass
color.obj(color)
Error 42: Symbol Undefined _D9Exception7__ClassZ
color.obj(color)
Error 42: Symbol Undefined _D12TypeInfo_Aya6__initZ
color.obj(color)
Error 42: Symbol Undefined __d_arrayappendcTX
color.obj(color)
Error 42: Symbol Undefined _D14TypeInfo_Array6__vtblZ
color.obj(color)
Error 42: Symbol Undefined __d_assert_msg
color.obj(color)
Error 42: Symbol Undefined _D9invariant12_d_invariantFC6ObjectZv
color.obj(color)
Error 42: Symbol Undefined _D11TypeInfo_Ah6__initZ
color.obj(color)
Error 42: Symbol Undefined __d_newarrayT
color.obj(color)
Error 42: Symbol Undefined __d_arraycast
color.obj(color)
Error 42: Symbol Undefined _D15TypeInfo_Struct6__vtblZ
color.obj(color)
Error 42: Symbol Undefined __d_arraycatnT
color.obj(color)
Error 42: Symbol Undefined __d_arrayappendcd
color.obj(color)
Error 42: Symbol Undefined _D11TypeInfo_Aa6__initZ
color.obj(color)
Error 42: Symbol Undefined _D6object6Object8toStringMFZAya
color.obj(color)
Error 42: Symbol Undefined _D6object6Object8opEqualsMFC6ObjectZb
color.obj(color)
Error 42: Symbol Undefined _D6Object7__ClassZ
color.obj(color)
Error 42: Symbol Undefined _D6object6Object6toHashMFNbNeZk
color.obj(color)
Error 42: Symbol Undefined _D14TypeInfo_Class6__vtblZ
color.obj(color)
Error 42: Symbol Undefined _D6object6Object5opCmpMFC6ObjectZi
color.obj(color)
Error 42: Symbol Undefined _D3std9algorithm12__ModuleInfoZ
OPTLINK : Warning 134: No Start Address
--- errorlevel 28

[/code]

I'm not sure what this all means, but I'm sure I'm doing something wrong. It doesn't spit out any files, and from what I've seen it's supposed to spit out 3 new ones.

All 3 files need to be in the same folder. (simpledisplay.d,
color.d, hotkeys.d)
When you call dmd youre only calling 1 file which was hotkeys.d.
You need to specify the other 2 like this.

dmd "D:\Documents\Other\Hotkeys\D\simpledisplay.d" "D:\Documents\Other\Hotkeys\D\color.d" "D:\Documents\Other\Hotkeys\D\hotkeys.d"

Ok so I ran that, and it sends me the error that Windows can't open this type of file, and asks me if I want to look for a new program to run it or select one from the installed list. I told it to open it with the dmd.exe compiler, and now it apparently just made a new file called "dmd" with the type of "File". It's 0KB in size, so that didn't work.

The other two commands tell me that the syntax is wrong, so idk.

Reply via email to